[PATCH] qsd: document vduse-blk exports

Stefan Hajnoczi posted 1 patch 1 year, 11 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20220525121947.859820-1-stefanha@redhat.com
Maintainers: Kevin Wolf <kwolf@redhat.com>
docs/tools/qemu-storage-daemon.rst   | 21 +++++++++++++++++++++
storage-daemon/qemu-storage-daemon.c |  8 ++++++++
2 files changed, 29 insertions(+)
[PATCH] qsd: document vduse-blk exports
Posted by Stefan Hajnoczi 1 year, 11 months ago
Document vduse-blk exports in qemu-storage-daemon --help and the
qemu-storage-daemon(1) man page.

Based-on: <20220523084611.91-1-xieyongji@bytedance.com>
Cc: Xie Yongji <xieyongji@bytedance.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
---
 docs/tools/qemu-storage-daemon.rst   | 21 +++++++++++++++++++++
 storage-daemon/qemu-storage-daemon.c |  8 ++++++++
 2 files changed, 29 insertions(+)

diff --git a/docs/tools/qemu-storage-daemon.rst b/docs/tools/qemu-storage-daemon.rst
index 8b97592663..1b461193e7 100644
--- a/docs/tools/qemu-storage-daemon.rst
+++ b/docs/tools/qemu-storage-daemon.rst
@@ -77,6 +77,7 @@ Standard options:
   --export [type=]vhost-user-blk,id=<id>,node-name=<node-name>,addr.type=unix,addr.path=<socket-path>[,writable=on|off][,logical-block-size=<block-size>][,num-queues=<num-queues>]
   --export [type=]vhost-user-blk,id=<id>,node-name=<node-name>,addr.type=fd,addr.str=<fd>[,writable=on|off][,logical-block-size=<block-size>][,num-queues=<num-queues>]
   --export [type=]fuse,id=<id>,node-name=<node-name>,mountpoint=<file>[,growable=on|off][,writable=on|off][,allow-other=on|off|auto]
+  --export [type=]vduse-blk,id=<id>,node-name=<node-name>[,writable=on|off][,num-queues=<num-queues>][,queue-size=<queue-size>][,logical-block-size=<block-size>]
 
   is a block export definition. ``node-name`` is the block node that should be
   exported. ``writable`` determines whether or not the export allows write
@@ -110,6 +111,26 @@ Standard options:
   ``allow-other`` to auto (the default) will try enabling this option, and on
   error fall back to disabling it.
 
+  The ``vduse-blk`` export type uses the ``id`` as the VDUSE device name.
+  ``num-queues`` sets the number of virtqueues (the default is 1).
+  ``queue-size`` sets the virtqueue descriptor table size (the default is 256).
+
+  The instantiated VDUSE device must then be added to the vDPA bus using the
+  vdpa(8) command from the iproute2 project::
+
+  # vdpa dev add <id> mgmtdev vduse
+
+  The device can be removed from the vDPA bus later as follows::
+
+  # vdpa dev del <id>
+
+  For more information about attaching vDPA devices to the host with
+  virtio_vdpa.ko or attaching them to guests with vhost_vdpa.ko, see
+  https://vdpa-dev.gitlab.io/.
+
+  For more information about VDUSE, see
+  https://docs.kernel.org/userspace-api/vduse.html.
+
 .. option:: --monitor MONITORDEF
 
   is a QMP monitor definition. See the :manpage:`qemu(1)` manual page for
diff --git a/storage-daemon/qemu-storage-daemon.c b/storage-daemon/qemu-storage-daemon.c
index 9b8b17f52e..a6b1383055 100644
--- a/storage-daemon/qemu-storage-daemon.c
+++ b/storage-daemon/qemu-storage-daemon.c
@@ -120,6 +120,14 @@ static void help(void)
 "                         vhost-user-blk device over file descriptor\n"
 "\n"
 #endif /* CONFIG_VHOST_USER_BLK_SERVER */
+#ifdef CONFIG_VDUSE_BLK_EXPORT
+"  --export [type=]vduse-blk,id=<id>,node-name=<node-name>\n"
+"           [,writable=on|off][,num-queues=<num-queues>]\n"
+"           [,queue-size=<queue-size>]\n"
+"           [,logical-block-size=<logical-block-size>]\n"
+"                         export the specified block node as a vduse-blk\n"
+"                         device using the id as the VDUSE device name\n"
+#endif /* CONFIG_VDUSE_BLK_EXPORT */
 "  --monitor [chardev=]name[,mode=control][,pretty[=on|off]]\n"
 "                         configure a QMP monitor\n"
 "\n"
-- 
2.36.1
Re: [PATCH] qsd: document vduse-blk exports
Posted by Yongji Xie 1 year, 11 months ago
On Wed, May 25, 2022 at 8:19 PM Stefan Hajnoczi <stefanha@redhat.com> wrote:
>
> Document vduse-blk exports in qemu-storage-daemon --help and the
> qemu-storage-daemon(1) man page.
>
> Based-on: <20220523084611.91-1-xieyongji@bytedance.com>
> Cc: Xie Yongji <xieyongji@bytedance.com>
> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
> ---
>  docs/tools/qemu-storage-daemon.rst   | 21 +++++++++++++++++++++
>  storage-daemon/qemu-storage-daemon.c |  8 ++++++++
>  2 files changed, 29 insertions(+)
>
> diff --git a/docs/tools/qemu-storage-daemon.rst b/docs/tools/qemu-storage-daemon.rst
> index 8b97592663..1b461193e7 100644
> --- a/docs/tools/qemu-storage-daemon.rst
> +++ b/docs/tools/qemu-storage-daemon.rst
> @@ -77,6 +77,7 @@ Standard options:
>    --export [type=]vhost-user-blk,id=<id>,node-name=<node-name>,addr.type=unix,addr.path=<socket-path>[,writable=on|off][,logical-block-size=<block-size>][,num-queues=<num-queues>]
>    --export [type=]vhost-user-blk,id=<id>,node-name=<node-name>,addr.type=fd,addr.str=<fd>[,writable=on|off][,logical-block-size=<block-size>][,num-queues=<num-queues>]
>    --export [type=]fuse,id=<id>,node-name=<node-name>,mountpoint=<file>[,growable=on|off][,writable=on|off][,allow-other=on|off|auto]
> +  --export [type=]vduse-blk,id=<id>,node-name=<node-name>[,writable=on|off][,num-queues=<num-queues>][,queue-size=<queue-size>][,logical-block-size=<block-size>]
>
>    is a block export definition. ``node-name`` is the block node that should be
>    exported. ``writable`` determines whether or not the export allows write
> @@ -110,6 +111,26 @@ Standard options:
>    ``allow-other`` to auto (the default) will try enabling this option, and on
>    error fall back to disabling it.
>
> +  The ``vduse-blk`` export type uses the ``id`` as the VDUSE device name.
> +  ``num-queues`` sets the number of virtqueues (the default is 1).
> +  ``queue-size`` sets the virtqueue descriptor table size (the default is 256).
> +
> +  The instantiated VDUSE device must then be added to the vDPA bus using the
> +  vdpa(8) command from the iproute2 project::
> +
> +  # vdpa dev add <id> mgmtdev vduse

Should it be:

# vdpa dev add name <id> mgmtdev vduse

Thanks,
Yongji
Re: [PATCH] qsd: document vduse-blk exports
Posted by Kevin Wolf 1 year, 11 months ago
Am 26.05.2022 um 13:36 hat Yongji Xie geschrieben:
> On Wed, May 25, 2022 at 8:19 PM Stefan Hajnoczi <stefanha@redhat.com> wrote:
> >
> > Document vduse-blk exports in qemu-storage-daemon --help and the
> > qemu-storage-daemon(1) man page.
> >
> > Based-on: <20220523084611.91-1-xieyongji@bytedance.com>
> > Cc: Xie Yongji <xieyongji@bytedance.com>
> > Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>

> > @@ -110,6 +111,26 @@ Standard options:
> >    ``allow-other`` to auto (the default) will try enabling this option, and on
> >    error fall back to disabling it.
> >
> > +  The ``vduse-blk`` export type uses the ``id`` as the VDUSE device name.
> > +  ``num-queues`` sets the number of virtqueues (the default is 1).
> > +  ``queue-size`` sets the virtqueue descriptor table size (the default is 256).
> > +
> > +  The instantiated VDUSE device must then be added to the vDPA bus using the
> > +  vdpa(8) command from the iproute2 project::
> > +
> > +  # vdpa dev add <id> mgmtdev vduse
> 
> Should it be:
> 
> # vdpa dev add name <id> mgmtdev vduse

Thanks, fixed this up (as well as a missing "\n" in the help output) and
applied to the block branch.

Kevin
Re: [PATCH] qsd: document vduse-blk exports
Posted by Stefan Hajnoczi 1 year, 11 months ago
On Fri, May 27, 2022 at 05:54:12PM +0200, Kevin Wolf wrote:
> Am 26.05.2022 um 13:36 hat Yongji Xie geschrieben:
> > On Wed, May 25, 2022 at 8:19 PM Stefan Hajnoczi <stefanha@redhat.com> wrote:
> > >
> > > Document vduse-blk exports in qemu-storage-daemon --help and the
> > > qemu-storage-daemon(1) man page.
> > >
> > > Based-on: <20220523084611.91-1-xieyongji@bytedance.com>
> > > Cc: Xie Yongji <xieyongji@bytedance.com>
> > > Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
> 
> > > @@ -110,6 +111,26 @@ Standard options:
> > >    ``allow-other`` to auto (the default) will try enabling this option, and on
> > >    error fall back to disabling it.
> > >
> > > +  The ``vduse-blk`` export type uses the ``id`` as the VDUSE device name.
> > > +  ``num-queues`` sets the number of virtqueues (the default is 1).
> > > +  ``queue-size`` sets the virtqueue descriptor table size (the default is 256).
> > > +
> > > +  The instantiated VDUSE device must then be added to the vDPA bus using the
> > > +  vdpa(8) command from the iproute2 project::
> > > +
> > > +  # vdpa dev add <id> mgmtdev vduse
> > 
> > Should it be:
> > 
> > # vdpa dev add name <id> mgmtdev vduse
> 
> Thanks, fixed this up (as well as a missing "\n" in the help output) and
> applied to the block branch.

Thanks!

Stefan