[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] vhost-user graceful connect/disconnect
From: |
Stefan Hajnoczi |
Subject: |
Re: [Qemu-devel] vhost-user graceful connect/disconnect |
Date: |
Mon, 8 Jan 2018 16:09:21 +0000 |
User-agent: |
Mutt/1.9.1 (2017-09-22) |
On Mon, Jan 08, 2018 at 07:22:37PM +0800, Wei Wang wrote:
> On 01/05/2018 11:49 PM, Stefan Hajnoczi wrote:
> > On Thu, Jan 04, 2018 at 07:15:38PM +0800, Wei Wang wrote:
> > > On 01/04/2018 06:47 PM, Stefan Hajnoczi wrote:
> > > > On Thu, Dec 21, 2017 at 06:01:29AM -0500, Marc-André Lureau wrote:
> > > >
> > > > I'm not going to prototype this yet, I'm working on virtio-vhost-user
> > > > first, but eventually I might get back to -object vhost-user(-backend).
> > > >
> > > Hi Stefan, are you implementing the guest slave and vhost-pci driver
> > > (we've
> > > posted to the dpdk mailinglist) as well? and do you have an estimation
> > > when
> > > would the prototype be ready?
> > I'm implementing the "[RFC virtio-dev] vhost-user-slave: add vhost-user
> > slave device type" device in QEMU and DPDK in order to show how the
> > ideas we've discussed work.
> >
> > Here is the VIRTIO spec link again:
> > https://stefanha.github.io/virtio/vhost-user-slave.html#x1-2830007
>
> There are four virtqueues documented in the spec, would two suffice? Request
> and Response can be distinguished by VHOST_USER_REPLY_MASK.
That's a good idea and I'll do it for the master-to-slave virtqueue.
Unfortunately virtqueues are asymmetric so a single virtqueue cannot
support the slave-to-master message flow (VHOST_USER_SET_SLAVE_REQ_FD):
1. Master puts an empty buffer onto vq.
2. Slave takes buffer and fills in a request. The buffer is now used.
3. Master pops the used buffer but there is no way to reply back to the
slave!
We still need 2 virtqueues for the slave-to-master message flow.
> I think the key issue is that we have a different viewpoint of protocol
> gating and protocol relaying. It is a high-level direction we need to align
> first before we could get into more details. Hope your upcoming code can get
> us a decision. Please also remember to reuse the dpdk code that my coworker
> posted to the dpdk mailinglist wherever possible, it may save your time to
> debug.
Thanks!
Stefan
signature.asc
Description: PGP signature