qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] vhost-user: Skip unnecessary duplicated VHOST_USER_SET_LOG_B


From: BillXiang
Subject: Re: [PATCH] vhost-user: Skip unnecessary duplicated VHOST_USER_SET_LOG_BASE requests
Date: Tue, 02 Jul 2024 11:22:00 +0800

> From: "Michael S. Tsirkin"<mst@redhat.com>
> Date:  Mon, Jul 1, 2024, 23:17
> Subject:  Re: [PATCH] vhost-user: Skip unnecessary duplicated 
> VHOST_USER_SET_LOG_BASE requests
> To: "Alex Bennée"<alex.bennee@linaro.org>
> Cc: "BillXiang"<xiangwencheng@dayudpu.com>, <qemu-devel@nongnu.org>
> On Mon, Jul 01, 2024 at 04:14:35PM +0100, Alex Bennée wrote:
> > "BillXiang" <xiangwencheng@dayudpu.com> writes:
>
> > >> From: "Alex Bennée"<alex.bennee@linaro.org>
> > >> Date:  Mon, Jul 1, 2024, 16:49
> > >> Subject:  Re: [PATCH] vhost-user: Skip unnecessary duplicated 
> > >> VHOST_USER_SET_LOG_BASE requests
> > >> To: "项文成"<xiangwencheng@dayudpu.com>
> > >> Cc: <qemu-devel@nongnu.org>, <mst@redhat.com>
> > >> 项文成 <xiangwencheng@dayudpu.com> writes:
> > >> 
> > >> > From: BillXiang <xiangwencheng@dayudpu.com>
> > >> >
> > >> > The VHOST_USER_SET_LOG_BASE requests should be categorized into
> > >> > non-vring specific messages, and should be sent only once.
> > >> > If send more than once, dpdk will munmap old log_addr which may has
> > >> > been used and cause segmentation fault.
> > >> 
> > >> This looks fine to me but looking at the vhost-user.rst we don't seem to
> > >> make any explicit statements about how many times given messages should
> > >> be sent.
> > >> 
> > > There is indeed no explicit statements about how many times given messages
> > >  should be sent in vhost-user.rst but already have some discussions such 
> > > as 
> > > https://lore.kernel.org/qemu-devel/20230127083027-mutt-send-email-mst@kernel.org/.
>
> > Right, but I think we should then update the specification if this is
> > the way we want things to work. Otherwise we are putting a backend
> > specific hack that another backend might be able to tolerate.

I agree with you that we should then update the specification and maybe for 
vhost_user_per_device_request.

> 
> I think it's a dpdk bug, we *allow* resending same message many times.
> However, less messages is better, I don't see a reason to
> repeat the same message many times.
> 

Of course these repeated VHOST_USER_SET_LOG_BASE can be handled by dpdk 
and it's what I did now. When live migration started, I have some extra-code to 
wait 
for the final log_base but I think it's ugly. 
AFAIK it's better to resolve this by vhost_user_per_device_request and it's 
what "per_device"
really mean.

> > >> >
> > >> > Signed-off-by: BillXiang <xiangwencheng@dayudpu.com>
> > >> > ---
> > >> >  hw/virtio/vhost-user.c | 1 +
> > >> >  1 file changed, 1 insertion(+)
> > >> >
> > >> > diff --git a/hw/virtio/vhost-user.c b/hw/virtio/vhost-user.c
> > >> > index cdf9af4a4b..41e34edd49 100644
> > >> > --- a/hw/virtio/vhost-user.c
> > >> > +++ b/hw/virtio/vhost-user.c
> > >> > @@ -371,6 +371,7 @@ static bool 
> > >> > vhost_user_per_device_request(VhostUserRequest request)
> > >> >      case VHOST_USER_RESET_DEVICE:
> > >> >      case VHOST_USER_ADD_MEM_REG:
> > >> >      case VHOST_USER_REM_MEM_REG:
> > >> > +    case VHOST_USER_SET_LOG_BASE:
> > >> >          return true;
> > >> >      default:
> > >> >          return false;
> > >> 
> > >> -- 
> > >> Alex Bennée
> > >> Virtualisation Tech Lead @ Linaro
>
> > -- 
> > Alex Bennée
> > Virtualisation Tech Lead @ Linaro



reply via email to

[Prev in Thread] Current Thread [Next in Thread]