Hi
In QEMU 8 virtiofsd has been removed in favor of the rust version. Which includes options that are not longer supported,
Do you have a view on what should be used going forwards to support virtiofsd in libvirt with qemu 8?
The options are showing as depreciated,
-o <compat-options>...
Options in a format compatible with the legacy implementation [deprecated]
Options in a format compatible with the legacy implementation [deprecated]
Rust version options
virtiofsd backend 1.5.1
Launch a virtiofsd backend.
USAGE:
virtiofsd [FLAGS] [OPTIONS] --fd <fd> --socket <socket> --socket-path <socket-path>
FLAGS:
--allow-direct-io
Honor the O_DIRECT flag passed down by guest applications
--announce-submounts
Tell the guest which directories are mount points
-d
Set log level to "debug" [deprecated]
-f
Compatibility option that has no effect [deprecated]
-h, --help
Prints help information
--killpriv-v2
Enable KILLPRIV V2 support
--no-killpriv-v2
Disable KILLPRIV V2 support [default]
--no-readdirplus
Disable support for READDIRPLUS operations
--posix-acl
Enable support for posix ACLs (implies --xattr)
--print-capabilities
Print vhost-user.json backend program capabilities and exit
--security-label
Enable security label support. Expects SELinux xattr on file creation from client and stores it in the newly
created file
--syslog
Log to syslog [default: stderr]
-V, --version
Prints version information
--writeback
Enable writeback cache
--xattr
Enable support for extended attributes
OPTIONS:
--cache <cache>
The caching policy the file system should use (auto, always, never) [default: auto]
-o <compat-options>...
Options in a format compatible with the legacy implementation [deprecated]
--fd <fd>
File descriptor for the listening socket
--inode-file-handles=<inode-file-handles>
When to use file handles to reference inodes instead of O_PATH file descriptors (never, prefer, mandatory)
- never: Never use file handles, always use O_PATH file descriptors.
- prefer: Attempt to generate file handles, but fall back to O_PATH file descriptors where the underlying
filesystem does not support file handles. Useful when there are various different filesystems under the
shared directory and some of them do not support file handles. ("fallback" is a deprecated alias for
"prefer".)
- mandatory: Always use file handles, never fall back to O_PATH file descriptors.
Using file handles reduces the number of file descriptors virtiofsd keeps open, which is not only helpful
with resources, but may also be important in cases where virtiofsd should only have file descriptors open
for files that are open in the guest, e.g. to get around bad interactions with NFS's silly renaming.
[default: never]
--log-level <log-level>
Log level (error, warn, info, debug, trace, off) [default: info]
--modcaps <modcaps>
Modify the list of capabilities, e.g., --modcaps=+sys_admin:-chown
--rlimit-nofile <rlimit-nofile>
Set maximum number of file descriptors (0 leaves rlimit unchanged) [default: min(1000000,
'/proc/sys/fs/nr_open')]
--sandbox <sandbox>
Sandbox mechanism to isolate the daemon process (namespace, chroot, none) [default: namespace]
--seccomp <seccomp>
Action to take when seccomp finds a not allowed syscall (none, kill, log, trap) [default: kill]
--shared-dir <shared-dir>
Shared directory path
--socket <socket>
vhost-user socket path [deprecated]
--socket-group <socket-group>
Name of group for the vhost-user socket
--socket-path <socket-path>
vhost-user socket path
--thread-pool-size <thread-pool-size>
Maximum thread pool size. A value of "0" disables the pool [default: 0]
--xattrmap <xattrmap>
Add custom rules for translating extended attributes between host and guest (e.g. :map::user.virtiofs.:)
Launch a virtiofsd backend.
USAGE:
virtiofsd [FLAGS] [OPTIONS] --fd <fd> --socket <socket> --socket-path <socket-path>
FLAGS:
--allow-direct-io
Honor the O_DIRECT flag passed down by guest applications
--announce-submounts
Tell the guest which directories are mount points
-d
Set log level to "debug" [deprecated]
-f
Compatibility option that has no effect [deprecated]
-h, --help
Prints help information
--killpriv-v2
Enable KILLPRIV V2 support
--no-killpriv-v2
Disable KILLPRIV V2 support [default]
--no-readdirplus
Disable support for READDIRPLUS operations
--posix-acl
Enable support for posix ACLs (implies --xattr)
--print-capabilities
Print vhost-user.json backend program capabilities and exit
--security-label
Enable security label support. Expects SELinux xattr on file creation from client and stores it in the newly
created file
--syslog
Log to syslog [default: stderr]
-V, --version
Prints version information
--writeback
Enable writeback cache
--xattr
Enable support for extended attributes
OPTIONS:
--cache <cache>
The caching policy the file system should use (auto, always, never) [default: auto]
-o <compat-options>...
Options in a format compatible with the legacy implementation [deprecated]
--fd <fd>
File descriptor for the listening socket
--inode-file-handles=<inode-file-handles>
When to use file handles to reference inodes instead of O_PATH file descriptors (never, prefer, mandatory)
- never: Never use file handles, always use O_PATH file descriptors.
- prefer: Attempt to generate file handles, but fall back to O_PATH file descriptors where the underlying
filesystem does not support file handles. Useful when there are various different filesystems under the
shared directory and some of them do not support file handles. ("fallback" is a deprecated alias for
"prefer".)
- mandatory: Always use file handles, never fall back to O_PATH file descriptors.
Using file handles reduces the number of file descriptors virtiofsd keeps open, which is not only helpful
with resources, but may also be important in cases where virtiofsd should only have file descriptors open
for files that are open in the guest, e.g. to get around bad interactions with NFS's silly renaming.
[default: never]
--log-level <log-level>
Log level (error, warn, info, debug, trace, off) [default: info]
--modcaps <modcaps>
Modify the list of capabilities, e.g., --modcaps=+sys_admin:-chown
--rlimit-nofile <rlimit-nofile>
Set maximum number of file descriptors (0 leaves rlimit unchanged) [default: min(1000000,
'/proc/sys/fs/nr_open')]
--sandbox <sandbox>
Sandbox mechanism to isolate the daemon process (namespace, chroot, none) [default: namespace]
--seccomp <seccomp>
Action to take when seccomp finds a not allowed syscall (none, kill, log, trap) [default: kill]
--shared-dir <shared-dir>
Shared directory path
--socket <socket>
vhost-user socket path [deprecated]
--socket-group <socket-group>
Name of group for the vhost-user socket
--socket-path <socket-path>
vhost-user socket path
--thread-pool-size <thread-pool-size>
Maximum thread pool size. A value of "0" disables the pool [default: 0]
--xattrmap <xattrmap>
Add custom rules for translating extended attributes between host and guest (e.g. :map::user.virtiofs.:)
Regards
Simon.