* [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
* [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 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
* 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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.