* [Qemu-devel] [PATCH v2 0/2] fsdev/virtfs: Assorted cleanups and fixes @ 2019-05-13 10:33 Greg Kurz 2019-05-13 10:34 ` [Qemu-devel] [PATCH v2 1/2] vl: Deprecate -virtfs_synth Greg Kurz 2019-05-13 10:34 ` [Qemu-devel] [PATCH v2 2/2] virtfs: Fix documentation of -fsdev and -virtfs Greg Kurz 0 siblings, 2 replies; 7+ messages in thread From: Greg Kurz @ 2019-05-13 10:33 UTC (permalink / raw) To: qemu-devel; +Cc: Paolo Bonzini, Thomas Huth, Greg Kurz I've already applied patches from v1 with r-b tags to 9p-next. Please find updated versions of the -virtfs_synth deprecation and the documentation patches. -- Greg --- Greg Kurz (2): vl: Deprecate -virtfs_synth virtfs: Fix documentation of -fsdev and -virtfs qemu-deprecated.texi | 5 +++ qemu-options.hx | 96 +++++++++++++++++++++++++++++++++++--------------- vl.c | 4 ++ 3 files changed, 77 insertions(+), 28 deletions(-) ^ permalink raw reply [flat|nested] 7+ messages in thread
* [Qemu-devel] [PATCH v2 1/2] vl: Deprecate -virtfs_synth 2019-05-13 10:33 [Qemu-devel] [PATCH v2 0/2] fsdev/virtfs: Assorted cleanups and fixes Greg Kurz @ 2019-05-13 10:34 ` Greg Kurz 2019-05-14 10:04 ` Thomas Huth 2019-05-13 10:34 ` [Qemu-devel] [PATCH v2 2/2] virtfs: Fix documentation of -fsdev and -virtfs Greg Kurz 1 sibling, 1 reply; 7+ messages in thread From: Greg Kurz @ 2019-05-13 10:34 UTC (permalink / raw) To: qemu-devel; +Cc: Paolo Bonzini, Thomas Huth, Greg Kurz The synth fsdriver never got used for anything else but the QTest testcase for VirtIO 9P. And even there, QTest uses -fsdev synth and -device virtio-9p-... directly. Signed-off-by: Greg Kurz <groug@kaod.org> --- v2: - change "no replacement" to "use '-fsdev synth' instead" --- qemu-deprecated.texi | 5 +++++ qemu-options.hx | 3 ++- vl.c | 4 ++++ 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/qemu-deprecated.texi b/qemu-deprecated.texi index 842e71b11dcc..1a821b68f435 100644 --- a/qemu-deprecated.texi +++ b/qemu-deprecated.texi @@ -72,6 +72,11 @@ backend settings instead of environment variables. To ease migration to the new format, the ``-audiodev-help'' option can be used to convert the current values of the environment variables to ``-audiodev'' options. +@subsection -virtfs_synth (since 4.1) + +The ``-virtfs_synth'' argument is now deprecated. Please use ``-fsdev synth'' +and ``-device virtio-9p-...'' instead. + @section QEMU Machine Protocol (QMP) commands @subsection block-dirty-bitmap-add "autoload" parameter (since 2.12.0) diff --git a/qemu-options.hx b/qemu-options.hx index 51802cbb266a..03c50ba0f0b2 100644 --- a/qemu-options.hx +++ b/qemu-options.hx @@ -1368,7 +1368,8 @@ DEF("virtfs_synth", 0, QEMU_OPTION_virtfs_synth, STEXI @item -virtfs_synth @findex -virtfs_synth -Create synthetic file system image +Create synthetic file system image. Note that this option is now deprecated. +Please use @code{-fsdev synth} and @code{-device virtio-9p-...} instead. ETEXI DEF("iscsi", HAS_ARG, QEMU_OPTION_iscsi, diff --git a/vl.c b/vl.c index b6709514c1bb..8456f006edbd 100644 --- a/vl.c +++ b/vl.c @@ -3535,6 +3535,10 @@ int main(int argc, char **argv, char **envp) QemuOpts *fsdev; QemuOpts *device; + warn_report("'-virtfs_synth' is deprecated, please use " + "'-fsdev synth' and '-device virtio-9p-...' " + "instead"); + fsdev = qemu_opts_create(qemu_find_opts("fsdev"), "v_synth", 1, NULL); if (!fsdev) { ^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [Qemu-devel] [PATCH v2 1/2] vl: Deprecate -virtfs_synth 2019-05-13 10:34 ` [Qemu-devel] [PATCH v2 1/2] vl: Deprecate -virtfs_synth Greg Kurz @ 2019-05-14 10:04 ` Thomas Huth 0 siblings, 0 replies; 7+ messages in thread From: Thomas Huth @ 2019-05-14 10:04 UTC (permalink / raw) To: Greg Kurz, qemu-devel; +Cc: Paolo Bonzini On 13/05/2019 12.34, Greg Kurz wrote: > The synth fsdriver never got used for anything else but the QTest > testcase for VirtIO 9P. And even there, QTest uses -fsdev synth and > -device virtio-9p-... directly. > > Signed-off-by: Greg Kurz <groug@kaod.org> > --- > v2: - change "no replacement" to "use '-fsdev synth' instead" > --- > qemu-deprecated.texi | 5 +++++ > qemu-options.hx | 3 ++- > vl.c | 4 ++++ > 3 files changed, 11 insertions(+), 1 deletion(-) > > diff --git a/qemu-deprecated.texi b/qemu-deprecated.texi > index 842e71b11dcc..1a821b68f435 100644 > --- a/qemu-deprecated.texi > +++ b/qemu-deprecated.texi > @@ -72,6 +72,11 @@ backend settings instead of environment variables. To ease migration to > the new format, the ``-audiodev-help'' option can be used to convert > the current values of the environment variables to ``-audiodev'' options. > > +@subsection -virtfs_synth (since 4.1) > + > +The ``-virtfs_synth'' argument is now deprecated. Please use ``-fsdev synth'' > +and ``-device virtio-9p-...'' instead. > + > @section QEMU Machine Protocol (QMP) commands > > @subsection block-dirty-bitmap-add "autoload" parameter (since 2.12.0) > diff --git a/qemu-options.hx b/qemu-options.hx > index 51802cbb266a..03c50ba0f0b2 100644 > --- a/qemu-options.hx > +++ b/qemu-options.hx > @@ -1368,7 +1368,8 @@ DEF("virtfs_synth", 0, QEMU_OPTION_virtfs_synth, > STEXI > @item -virtfs_synth > @findex -virtfs_synth > -Create synthetic file system image > +Create synthetic file system image. Note that this option is now deprecated. > +Please use @code{-fsdev synth} and @code{-device virtio-9p-...} instead. > ETEXI > > DEF("iscsi", HAS_ARG, QEMU_OPTION_iscsi, > diff --git a/vl.c b/vl.c > index b6709514c1bb..8456f006edbd 100644 > --- a/vl.c > +++ b/vl.c > @@ -3535,6 +3535,10 @@ int main(int argc, char **argv, char **envp) > QemuOpts *fsdev; > QemuOpts *device; > > + warn_report("'-virtfs_synth' is deprecated, please use " > + "'-fsdev synth' and '-device virtio-9p-...' " > + "instead"); > + > fsdev = qemu_opts_create(qemu_find_opts("fsdev"), "v_synth", > 1, NULL); > if (!fsdev) { > Reviewed-by: Thomas Huth <thuth@redhat.com> ^ permalink raw reply [flat|nested] 7+ messages in thread
* [Qemu-devel] [PATCH v2 2/2] virtfs: Fix documentation of -fsdev and -virtfs 2019-05-13 10:33 [Qemu-devel] [PATCH v2 0/2] fsdev/virtfs: Assorted cleanups and fixes Greg Kurz 2019-05-13 10:34 ` [Qemu-devel] [PATCH v2 1/2] vl: Deprecate -virtfs_synth Greg Kurz @ 2019-05-13 10:34 ` Greg Kurz 2019-05-17 13:17 ` Greg Kurz 1 sibling, 1 reply; 7+ messages in thread From: Greg Kurz @ 2019-05-13 10:34 UTC (permalink / raw) To: qemu-devel; +Cc: Paolo Bonzini, Thomas Huth, Greg Kurz This fixes several things: - add "id" description to -virtfs documentation - split the description into several lines in both usage and documentation for accurateness and clarity - add documentation and usage of the synth fsdriver - add "throttling.*" description to -fsdev local - add some missing periods - add proper reference to the virtfs-proxy-helper(1) manual page - document that the virtio device may be either virtio-9p-pci, virtio-9p-ccw or virtio-9p-device, depending on the machine type Buglink: https://bugs.launchpad.net/qemu/+bug/1581976 Signed-off-by: Greg Kurz <groug@kaod.org> --- v2: - mention virtfs-proxy-helper(1) change in the changelog - mention virtio-9p-ccw and virtio-9p-device --- qemu-options.hx | 93 +++++++++++++++++++++++++++++++++++++++---------------- 1 file changed, 66 insertions(+), 27 deletions(-) diff --git a/qemu-options.hx b/qemu-options.hx index 03c50ba0f0b2..fa705b63b157 100644 --- a/qemu-options.hx +++ b/qemu-options.hx @@ -1232,26 +1232,35 @@ the write back by pressing @key{C-a s} (@pxref{disk_images}). ETEXI DEF("fsdev", HAS_ARG, QEMU_OPTION_fsdev, - "-fsdev fsdriver,id=id[,path=path,][security_model={mapped-xattr|mapped-file|passthrough|none}]\n" - " [,writeout=immediate][,readonly][,socket=socket|sock_fd=sock_fd][,fmode=fmode][,dmode=dmode]\n" + "-fsdev local,id=id,path=path,security_model=mapped-xattr|mapped-file|passthrough|none\n" + " [,writeout=immediate][,readonly][,fmode=fmode][,dmode=dmode]\n" " [[,throttling.bps-total=b]|[[,throttling.bps-read=r][,throttling.bps-write=w]]]\n" " [[,throttling.iops-total=i]|[[,throttling.iops-read=r][,throttling.iops-write=w]]]\n" " [[,throttling.bps-total-max=bm]|[[,throttling.bps-read-max=rm][,throttling.bps-write-max=wm]]]\n" " [[,throttling.iops-total-max=im]|[[,throttling.iops-read-max=irm][,throttling.iops-write-max=iwm]]]\n" - " [[,throttling.iops-size=is]]\n", + " [[,throttling.iops-size=is]]\n" + "-fsdev proxy,id=id,socket=socket[,writeout=immediate][,readonly]\n" + "-fsdev proxy,id=id,sock_fd=sock_fd[,writeout=immediate][,readonly]\n" + "-fsdev synth,id=id\n", QEMU_ARCH_ALL) STEXI -@item -fsdev @var{fsdriver},id=@var{id},path=@var{path},[security_model=@var{security_model}][,writeout=@var{writeout}][,readonly][,socket=@var{socket}|sock_fd=@var{sock_fd}][,fmode=@var{fmode}][,dmode=@var{dmode}] +@item -fsdev local,id=@var{id},path=@var{path},security_model=@var{security_model} [,writeout=@var{writeout}][,readonly][,fmode=@var{fmode}][,dmode=@var{dmode}] [,throttling.@var{option}=@var{value}[,throttling.@var{option}=@var{value}[,...]]] +@itemx -fsdev proxy,id=@var{id},socket=@var{socket}[,writeout=@var{writeout}][,readonly] +@itemx -fsdev proxy,id=@var{id},sock_fd=@var{sock_fd}[,writeout=@var{writeout}][,readonly] +@itemx -fsdev synth,id=@var{id}[,readonly] @findex -fsdev Define a new file system device. Valid options are: @table @option -@item @var{fsdriver} -This option specifies the fs driver backend to use. -Currently "local" and "proxy" file system drivers are supported. +@item local +Accesses to the filesystem are done by QEMU. +@item proxy +Accesses to the filesystem are done by virtfs-proxy-helper(1). +@item synth +Synthetic filesystem, only used by QTests. @item id=@var{id} -Specifies identifier for this device +Specifies identifier for this device. @item path=@var{path} Specifies the export path for the file system device. Files under this path will be available to the 9p client on the guest. @@ -1279,48 +1288,76 @@ Enables exporting 9p share as a readonly mount for guests. By default read-write access is given. @item socket=@var{socket} Enables proxy filesystem driver to use passed socket file for communicating -with virtfs-proxy-helper +with virtfs-proxy-helper(1). @item sock_fd=@var{sock_fd} Enables proxy filesystem driver to use passed socket descriptor for -communicating with virtfs-proxy-helper. Usually a helper like libvirt -will create socketpair and pass one of the fds as sock_fd +communicating with virtfs-proxy-helper(1). Usually a helper like libvirt +will create socketpair and pass one of the fds as sock_fd. @item fmode=@var{fmode} Specifies the default mode for newly created files on the host. Works only with security models "mapped-xattr" and "mapped-file". @item dmode=@var{dmode} Specifies the default mode for newly created directories on the host. Works only with security models "mapped-xattr" and "mapped-file". +@item throttling.bps-total=@var{b},throttling.bps-read=@var{r},throttling.bps-write=@var{w} +Specify bandwidth throttling limits in bytes per second, either for all request +types or for reads or writes only. +@item throttling.bps-total-max=@var{bm},bps-read-max=@var{rm},bps-write-max=@var{wm} +Specify bursts in bytes per second, either for all request types or for reads +or writes only. Bursts allow the guest I/O to spike above the limit +temporarily. +@item throttling.iops-total=@var{i},throttling.iops-read=@var{r}, throttling.iops-write=@var{w} +Specify request rate limits in requests per second, either for all request +types or for reads or writes only. +@item throttling.iops-total-max=@var{im},throttling.iops-read-max=@var{irm}, throttling.iops-write-max=@var{iwm} +Specify bursts in requests per second, either for all request types or for reads +or writes only. Bursts allow the guest I/O to spike above the limit temporarily. +@item throttling.iops-size=@var{is} +Let every @var{is} bytes of a request count as a new request for iops +throttling purposes. @end table --fsdev option is used along with -device driver "virtio-9p-pci". -@item -device virtio-9p-pci,fsdev=@var{id},mount_tag=@var{mount_tag} -Options for virtio-9p-pci driver are: +-fsdev option is used along with -device driver "virtio-9p-...". +@item -device virtio-9p-@var{type},fsdev=@var{id},mount_tag=@var{mount_tag} +Options for virtio-9p-... driver are: @table @option +@item @var{type} +Specifies the variant to be used. Supported values are "pci", "ccw" or "device", +depending on the machine type. @item fsdev=@var{id} -Specifies the id value specified along with -fsdev option +Specifies the id value specified along with -fsdev option. @item mount_tag=@var{mount_tag} -Specifies the tag name to be used by the guest to mount this export point +Specifies the tag name to be used by the guest to mount this export point. @end table ETEXI DEF("virtfs", HAS_ARG, QEMU_OPTION_virtfs, - "-virtfs local,path=path,mount_tag=tag,security_model=[mapped-xattr|mapped-file|passthrough|none]\n" - " [,id=id][,writeout=immediate][,readonly][,socket=socket|sock_fd=sock_fd][,fmode=fmode][,dmode=dmode]\n", + "-virtfs local,path=path,mount_tag=tag,security_model=mapped-xattr|mapped-file|passthrough|none\n" + " [,id=id][,writeout=immediate][,readonly][,fmode=fmode][,dmode=dmode]\n" + "-virtfs proxy,mount_tag=tag,socket=socket[,id=id][,writeout=immediate][,readonly]\n" + "-virtfs proxy,mount_tag=tag,sock_fd=sock_fd[,id=id][,writeout=immediate][,readonly]\n" + "-virtfs synth,mount_tag=tag[,id=id][,readonly]\n", QEMU_ARCH_ALL) STEXI -@item -virtfs @var{fsdriver}[,path=@var{path}],mount_tag=@var{mount_tag}[,security_model=@var{security_model}][,writeout=@var{writeout}][,readonly][,socket=@var{socket}|sock_fd=@var{sock_fd}][,fmode=@var{fmode}][,dmode=@var{dmode}] +@item -virtfs local,path=@var{path},mount_tag=@var{mount_tag} ,security_model=@var{security_model}[,writeout=@var{writeout}][,readonly] [,fmode=@var{fmode}][,dmode=@var{dmode}] +@itemx -virtfs proxy,socket=@var{socket},mount_tag=@var{mount_tag} [,writeout=@var{writeout}][,readonly] +@itemx -virtfs proxy,sock_fd=@var{sock_fd},mount_tag=@var{mount_tag} [,writeout=@var{writeout}][,readonly] +@itemx -virtfs synth,mount_tag=@var{mount_tag} @findex -virtfs -The general form of a Virtual File system pass-through options are: +Define a new filesystem device and expose it to the guest using a virtio-9p-device. The general form of a Virtual File system pass-through options are: @table @option -@item @var{fsdriver} -This option specifies the fs driver backend to use. -Currently "local" and "proxy" file system drivers are supported. +@item local +Accesses to the filesystem are done by QEMU. +@item proxy +Accesses to the filesystem are done by virtfs-proxy-helper(1). +@item synth +Synthetic filesystem, only used by QTests. @item id=@var{id} -Specifies identifier for this device +Specifies identifier for the filesystem device @item path=@var{path} Specifies the export path for the file system device. Files under this path will be available to the 9p client on the guest. @@ -1348,17 +1385,19 @@ Enables exporting 9p share as a readonly mount for guests. By default read-write access is given. @item socket=@var{socket} Enables proxy filesystem driver to use passed socket file for -communicating with virtfs-proxy-helper. Usually a helper like libvirt -will create socketpair and pass one of the fds as sock_fd +communicating with virtfs-proxy-helper(1). Usually a helper like libvirt +will create socketpair and pass one of the fds as sock_fd. @item sock_fd Enables proxy filesystem driver to use passed 'sock_fd' as the socket -descriptor for interfacing with virtfs-proxy-helper +descriptor for interfacing with virtfs-proxy-helper(1). @item fmode=@var{fmode} Specifies the default mode for newly created files on the host. Works only with security models "mapped-xattr" and "mapped-file". @item dmode=@var{dmode} Specifies the default mode for newly created directories on the host. Works only with security models "mapped-xattr" and "mapped-file". +@item mount_tag=@var{mount_tag} +Specifies the tag name to be used by the guest to mount this export point. @end table ETEXI ^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [Qemu-devel] [PATCH v2 2/2] virtfs: Fix documentation of -fsdev and -virtfs 2019-05-13 10:34 ` [Qemu-devel] [PATCH v2 2/2] virtfs: Fix documentation of -fsdev and -virtfs Greg Kurz @ 2019-05-17 13:17 ` Greg Kurz 2019-05-17 13:22 ` Thomas Huth 0 siblings, 1 reply; 7+ messages in thread From: Greg Kurz @ 2019-05-17 13:17 UTC (permalink / raw) To: Thomas Huth; +Cc: Paolo Bonzini, qemu-devel On Mon, 13 May 2019 12:34:10 +0200 Greg Kurz <groug@kaod.org> wrote: > This fixes several things: > - add "id" description to -virtfs documentation > - split the description into several lines in both usage and documentation > for accurateness and clarity > - add documentation and usage of the synth fsdriver > - add "throttling.*" description to -fsdev local > - add some missing periods > - add proper reference to the virtfs-proxy-helper(1) manual page > - document that the virtio device may be either virtio-9p-pci, virtio-9p-ccw > or virtio-9p-device, depending on the machine type > > Buglink: https://bugs.launchpad.net/qemu/+bug/1581976 > Signed-off-by: Greg Kurz <groug@kaod.org> > --- > v2: - mention virtfs-proxy-helper(1) change in the changelog > - mention virtio-9p-ccw and virtio-9p-device > --- Thomas, Unless you (or anyone else) have some objections, I intend to apply this patch and issue a pull request in a near future. Cheers, -- Greg > qemu-options.hx | 93 +++++++++++++++++++++++++++++++++++++++---------------- > 1 file changed, 66 insertions(+), 27 deletions(-) > > diff --git a/qemu-options.hx b/qemu-options.hx > index 03c50ba0f0b2..fa705b63b157 100644 > --- a/qemu-options.hx > +++ b/qemu-options.hx > @@ -1232,26 +1232,35 @@ the write back by pressing @key{C-a s} (@pxref{disk_images}). > ETEXI > > DEF("fsdev", HAS_ARG, QEMU_OPTION_fsdev, > - "-fsdev fsdriver,id=id[,path=path,][security_model={mapped-xattr|mapped-file|passthrough|none}]\n" > - " [,writeout=immediate][,readonly][,socket=socket|sock_fd=sock_fd][,fmode=fmode][,dmode=dmode]\n" > + "-fsdev local,id=id,path=path,security_model=mapped-xattr|mapped-file|passthrough|none\n" > + " [,writeout=immediate][,readonly][,fmode=fmode][,dmode=dmode]\n" > " [[,throttling.bps-total=b]|[[,throttling.bps-read=r][,throttling.bps-write=w]]]\n" > " [[,throttling.iops-total=i]|[[,throttling.iops-read=r][,throttling.iops-write=w]]]\n" > " [[,throttling.bps-total-max=bm]|[[,throttling.bps-read-max=rm][,throttling.bps-write-max=wm]]]\n" > " [[,throttling.iops-total-max=im]|[[,throttling.iops-read-max=irm][,throttling.iops-write-max=iwm]]]\n" > - " [[,throttling.iops-size=is]]\n", > + " [[,throttling.iops-size=is]]\n" > + "-fsdev proxy,id=id,socket=socket[,writeout=immediate][,readonly]\n" > + "-fsdev proxy,id=id,sock_fd=sock_fd[,writeout=immediate][,readonly]\n" > + "-fsdev synth,id=id\n", > QEMU_ARCH_ALL) > > STEXI > > -@item -fsdev @var{fsdriver},id=@var{id},path=@var{path},[security_model=@var{security_model}][,writeout=@var{writeout}][,readonly][,socket=@var{socket}|sock_fd=@var{sock_fd}][,fmode=@var{fmode}][,dmode=@var{dmode}] > +@item -fsdev local,id=@var{id},path=@var{path},security_model=@var{security_model} [,writeout=@var{writeout}][,readonly][,fmode=@var{fmode}][,dmode=@var{dmode}] [,throttling.@var{option}=@var{value}[,throttling.@var{option}=@var{value}[,...]]] > +@itemx -fsdev proxy,id=@var{id},socket=@var{socket}[,writeout=@var{writeout}][,readonly] > +@itemx -fsdev proxy,id=@var{id},sock_fd=@var{sock_fd}[,writeout=@var{writeout}][,readonly] > +@itemx -fsdev synth,id=@var{id}[,readonly] > @findex -fsdev > Define a new file system device. Valid options are: > @table @option > -@item @var{fsdriver} > -This option specifies the fs driver backend to use. > -Currently "local" and "proxy" file system drivers are supported. > +@item local > +Accesses to the filesystem are done by QEMU. > +@item proxy > +Accesses to the filesystem are done by virtfs-proxy-helper(1). > +@item synth > +Synthetic filesystem, only used by QTests. > @item id=@var{id} > -Specifies identifier for this device > +Specifies identifier for this device. > @item path=@var{path} > Specifies the export path for the file system device. Files under > this path will be available to the 9p client on the guest. > @@ -1279,48 +1288,76 @@ Enables exporting 9p share as a readonly mount for guests. By default > read-write access is given. > @item socket=@var{socket} > Enables proxy filesystem driver to use passed socket file for communicating > -with virtfs-proxy-helper > +with virtfs-proxy-helper(1). > @item sock_fd=@var{sock_fd} > Enables proxy filesystem driver to use passed socket descriptor for > -communicating with virtfs-proxy-helper. Usually a helper like libvirt > -will create socketpair and pass one of the fds as sock_fd > +communicating with virtfs-proxy-helper(1). Usually a helper like libvirt > +will create socketpair and pass one of the fds as sock_fd. > @item fmode=@var{fmode} > Specifies the default mode for newly created files on the host. Works only > with security models "mapped-xattr" and "mapped-file". > @item dmode=@var{dmode} > Specifies the default mode for newly created directories on the host. Works > only with security models "mapped-xattr" and "mapped-file". > +@item throttling.bps-total=@var{b},throttling.bps-read=@var{r},throttling.bps-write=@var{w} > +Specify bandwidth throttling limits in bytes per second, either for all request > +types or for reads or writes only. > +@item throttling.bps-total-max=@var{bm},bps-read-max=@var{rm},bps-write-max=@var{wm} > +Specify bursts in bytes per second, either for all request types or for reads > +or writes only. Bursts allow the guest I/O to spike above the limit > +temporarily. > +@item throttling.iops-total=@var{i},throttling.iops-read=@var{r}, throttling.iops-write=@var{w} > +Specify request rate limits in requests per second, either for all request > +types or for reads or writes only. > +@item throttling.iops-total-max=@var{im},throttling.iops-read-max=@var{irm}, throttling.iops-write-max=@var{iwm} > +Specify bursts in requests per second, either for all request types or for reads > +or writes only. Bursts allow the guest I/O to spike above the limit temporarily. > +@item throttling.iops-size=@var{is} > +Let every @var{is} bytes of a request count as a new request for iops > +throttling purposes. > @end table > > --fsdev option is used along with -device driver "virtio-9p-pci". > -@item -device virtio-9p-pci,fsdev=@var{id},mount_tag=@var{mount_tag} > -Options for virtio-9p-pci driver are: > +-fsdev option is used along with -device driver "virtio-9p-...". > +@item -device virtio-9p-@var{type},fsdev=@var{id},mount_tag=@var{mount_tag} > +Options for virtio-9p-... driver are: > @table @option > +@item @var{type} > +Specifies the variant to be used. Supported values are "pci", "ccw" or "device", > +depending on the machine type. > @item fsdev=@var{id} > -Specifies the id value specified along with -fsdev option > +Specifies the id value specified along with -fsdev option. > @item mount_tag=@var{mount_tag} > -Specifies the tag name to be used by the guest to mount this export point > +Specifies the tag name to be used by the guest to mount this export point. > @end table > > ETEXI > > DEF("virtfs", HAS_ARG, QEMU_OPTION_virtfs, > - "-virtfs local,path=path,mount_tag=tag,security_model=[mapped-xattr|mapped-file|passthrough|none]\n" > - " [,id=id][,writeout=immediate][,readonly][,socket=socket|sock_fd=sock_fd][,fmode=fmode][,dmode=dmode]\n", > + "-virtfs local,path=path,mount_tag=tag,security_model=mapped-xattr|mapped-file|passthrough|none\n" > + " [,id=id][,writeout=immediate][,readonly][,fmode=fmode][,dmode=dmode]\n" > + "-virtfs proxy,mount_tag=tag,socket=socket[,id=id][,writeout=immediate][,readonly]\n" > + "-virtfs proxy,mount_tag=tag,sock_fd=sock_fd[,id=id][,writeout=immediate][,readonly]\n" > + "-virtfs synth,mount_tag=tag[,id=id][,readonly]\n", > QEMU_ARCH_ALL) > > STEXI > > -@item -virtfs @var{fsdriver}[,path=@var{path}],mount_tag=@var{mount_tag}[,security_model=@var{security_model}][,writeout=@var{writeout}][,readonly][,socket=@var{socket}|sock_fd=@var{sock_fd}][,fmode=@var{fmode}][,dmode=@var{dmode}] > +@item -virtfs local,path=@var{path},mount_tag=@var{mount_tag} ,security_model=@var{security_model}[,writeout=@var{writeout}][,readonly] [,fmode=@var{fmode}][,dmode=@var{dmode}] > +@itemx -virtfs proxy,socket=@var{socket},mount_tag=@var{mount_tag} [,writeout=@var{writeout}][,readonly] > +@itemx -virtfs proxy,sock_fd=@var{sock_fd},mount_tag=@var{mount_tag} [,writeout=@var{writeout}][,readonly] > +@itemx -virtfs synth,mount_tag=@var{mount_tag} > @findex -virtfs > > -The general form of a Virtual File system pass-through options are: > +Define a new filesystem device and expose it to the guest using a virtio-9p-device. The general form of a Virtual File system pass-through options are: > @table @option > -@item @var{fsdriver} > -This option specifies the fs driver backend to use. > -Currently "local" and "proxy" file system drivers are supported. > +@item local > +Accesses to the filesystem are done by QEMU. > +@item proxy > +Accesses to the filesystem are done by virtfs-proxy-helper(1). > +@item synth > +Synthetic filesystem, only used by QTests. > @item id=@var{id} > -Specifies identifier for this device > +Specifies identifier for the filesystem device > @item path=@var{path} > Specifies the export path for the file system device. Files under > this path will be available to the 9p client on the guest. > @@ -1348,17 +1385,19 @@ Enables exporting 9p share as a readonly mount for guests. By default > read-write access is given. > @item socket=@var{socket} > Enables proxy filesystem driver to use passed socket file for > -communicating with virtfs-proxy-helper. Usually a helper like libvirt > -will create socketpair and pass one of the fds as sock_fd > +communicating with virtfs-proxy-helper(1). Usually a helper like libvirt > +will create socketpair and pass one of the fds as sock_fd. > @item sock_fd > Enables proxy filesystem driver to use passed 'sock_fd' as the socket > -descriptor for interfacing with virtfs-proxy-helper > +descriptor for interfacing with virtfs-proxy-helper(1). > @item fmode=@var{fmode} > Specifies the default mode for newly created files on the host. Works only > with security models "mapped-xattr" and "mapped-file". > @item dmode=@var{dmode} > Specifies the default mode for newly created directories on the host. Works > only with security models "mapped-xattr" and "mapped-file". > +@item mount_tag=@var{mount_tag} > +Specifies the tag name to be used by the guest to mount this export point. > @end table > ETEXI > > ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Qemu-devel] [PATCH v2 2/2] virtfs: Fix documentation of -fsdev and -virtfs 2019-05-17 13:17 ` Greg Kurz @ 2019-05-17 13:22 ` Thomas Huth 2019-05-17 15:20 ` Greg Kurz 0 siblings, 1 reply; 7+ messages in thread From: Thomas Huth @ 2019-05-17 13:22 UTC (permalink / raw) To: Greg Kurz; +Cc: Paolo Bonzini, qemu-devel On 17/05/2019 15.17, Greg Kurz wrote: > On Mon, 13 May 2019 12:34:10 +0200 > Greg Kurz <groug@kaod.org> wrote: > >> This fixes several things: >> - add "id" description to -virtfs documentation >> - split the description into several lines in both usage and documentation >> for accurateness and clarity >> - add documentation and usage of the synth fsdriver >> - add "throttling.*" description to -fsdev local >> - add some missing periods >> - add proper reference to the virtfs-proxy-helper(1) manual page >> - document that the virtio device may be either virtio-9p-pci, virtio-9p-ccw >> or virtio-9p-device, depending on the machine type >> >> Buglink: https://bugs.launchpad.net/qemu/+bug/1581976 >> Signed-off-by: Greg Kurz <groug@kaod.org> >> --- >> v2: - mention virtfs-proxy-helper(1) change in the changelog >> - mention virtio-9p-ccw and virtio-9p-device >> --- > > Thomas, > > Unless you (or anyone else) have some objections, I intend to apply this patch > and issue a pull request in a near future. Fine for me - I just lack the detailed 9p knowledge to provide a real "Reviewed-by" here, I hope you were not waiting for it? ... but if it helps, I can at least say: Acked-by: Thomas Huth <thuth@redhat.com> ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Qemu-devel] [PATCH v2 2/2] virtfs: Fix documentation of -fsdev and -virtfs 2019-05-17 13:22 ` Thomas Huth @ 2019-05-17 15:20 ` Greg Kurz 0 siblings, 0 replies; 7+ messages in thread From: Greg Kurz @ 2019-05-17 15:20 UTC (permalink / raw) To: Thomas Huth; +Cc: Paolo Bonzini, qemu-devel On Fri, 17 May 2019 15:22:48 +0200 Thomas Huth <thuth@redhat.com> wrote: > On 17/05/2019 15.17, Greg Kurz wrote: > > On Mon, 13 May 2019 12:34:10 +0200 > > Greg Kurz <groug@kaod.org> wrote: > > > >> This fixes several things: > >> - add "id" description to -virtfs documentation > >> - split the description into several lines in both usage and documentation > >> for accurateness and clarity > >> - add documentation and usage of the synth fsdriver > >> - add "throttling.*" description to -fsdev local > >> - add some missing periods > >> - add proper reference to the virtfs-proxy-helper(1) manual page > >> - document that the virtio device may be either virtio-9p-pci, virtio-9p-ccw > >> or virtio-9p-device, depending on the machine type > >> > >> Buglink: https://bugs.launchpad.net/qemu/+bug/1581976 > >> Signed-off-by: Greg Kurz <groug@kaod.org> > >> --- > >> v2: - mention virtfs-proxy-helper(1) change in the changelog > >> - mention virtio-9p-ccw and virtio-9p-device > >> --- > > > > Thomas, > > > > Unless you (or anyone else) have some objections, I intend to apply this patch > > and issue a pull request in a near future. > > Fine for me - I just lack the detailed 9p knowledge to provide a real > "Reviewed-by" here, I hope you were not waiting for it? Heh, no pb, I wasn't expecting a detailed review. > ... but if it > helps, I can at least say: > > Acked-by: Thomas Huth <thuth@redhat.com> Works for me :) Thanks Thomas ! -- Greg ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2019-05-17 15:24 UTC | newest] Thread overview: 7+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2019-05-13 10:33 [Qemu-devel] [PATCH v2 0/2] fsdev/virtfs: Assorted cleanups and fixes Greg Kurz 2019-05-13 10:34 ` [Qemu-devel] [PATCH v2 1/2] vl: Deprecate -virtfs_synth Greg Kurz 2019-05-14 10:04 ` Thomas Huth 2019-05-13 10:34 ` [Qemu-devel] [PATCH v2 2/2] virtfs: Fix documentation of -fsdev and -virtfs Greg Kurz 2019-05-17 13:17 ` Greg Kurz 2019-05-17 13:22 ` Thomas Huth 2019-05-17 15:20 ` Greg Kurz
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).