On 04/01/2016 05:16 AM, [email protected] wrote: > From: Marc-André Lureau <[email protected]> > > Learn to give a socket to the slave to let him make requests to the > master. > > Signed-off-by: Marc-André Lureau <[email protected]> > --- > docs/specs/vhost-user.txt | 23 ++++++++++++++++ > hw/virtio/vhost-user.c | 69 > +++++++++++++++++++++++++++++++++++++++++++++++ > 2 files changed, 92 insertions(+) > > diff --git a/docs/specs/vhost-user.txt b/docs/specs/vhost-user.txt > index 0312d40..8a635fa 100644 > --- a/docs/specs/vhost-user.txt > +++ b/docs/specs/vhost-user.txt > @@ -248,12 +248,25 @@ Once the source has finished migration, rings will be > stopped by > the source. No further update must be done before rings are > restarted. > > +Slave communication > +------------------- > + > +An optional communication channel is provided if the slave > +declares VHOST_USER_PROTOCOL_F_SLAVE_CHANNEL feature, to allow
s/declares/declares the/ > +the slave to make requests to the master. > + > +The fd is provided via VHOST_USER_SET_SLAVE_FD ancillary data. > + > +A slave may then send VHOST_USER_SLAVE_* messages to the master > +using this fd communication channel. > + > Protocol features > ----------------- > > #define VHOST_USER_PROTOCOL_F_MQ 0 > #define VHOST_USER_PROTOCOL_F_LOG_SHMFD 1 > #define VHOST_USER_PROTOCOL_F_RARP 2 > +#define VHOST_USER_PROTOCOL_F_SLAVE_CHANNEL 3 > > Message types > ------------- > @@ -464,3 +477,13 @@ Message types > is present in VHOST_USER_GET_PROTOCOL_FEATURES. > The first 6 bytes of the payload contain the mac address of the guest > to > allow the vhost user backend to construct and broadcast the fake RARP. > + > + * VHOST_USER_SET_SLAVE_FD > + Id: 20 > + Equivalent ioctl: N/A > + Master payload: N/A > + > + Set the file descriptor for the salve to make VHOST_USER_SLAVE_* s/salve/slave/ > + request to the master. It is passed in the ancillary data. > + This message is only sent if VHOST_USER_PROTOCOL_F_SLAVE_CHANNEL > + feature is available. > -- Eric Blake eblake redhat com +1-919-301-3266 Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature
