From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
Add options to specify parameters for virtio-fs paths, i.e.
./virtiofsd -o vhost_user_socket=/tmp/vhostqemu
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
---
contrib/virtiofsd/fuse_i.h | 1 +
contrib/virtiofsd/fuse_lowlevel.c | 10 +++++++---
contrib/virtiofsd/helper.c | 18 +++++++++---------
3 files changed, 17 insertions(+), 12 deletions(-)
diff --git a/contrib/virtiofsd/fuse_i.h b/contrib/virtiofsd/fuse_i.h
index 6c3f432d0e..d65af06ff0 100644
--- a/contrib/virtiofsd/fuse_i.h
+++ b/contrib/virtiofsd/fuse_i.h
@@ -63,6 +63,7 @@ struct fuse_session {
struct fuse_notify_req notify_list;
size_t bufsize;
int error;
+ char *vu_socket_path;
};
struct fuse_chan {
diff --git a/contrib/virtiofsd/fuse_lowlevel.c b/contrib/virtiofsd/fuse_lowlevel.c
index 6fe7506ead..d47e4438f3 100644
--- a/contrib/virtiofsd/fuse_lowlevel.c
+++ b/contrib/virtiofsd/fuse_lowlevel.c
@@ -2064,6 +2064,8 @@ static const struct fuse_opt fuse_ll_opts[] = {
LL_OPTION("-d", debug, 1),
LL_OPTION("--debug", debug, 1),
LL_OPTION("allow_root", deny_others, 1),
+ LL_OPTION("--socket-path=%s", vu_socket_path, 0),
+ LL_OPTION("vhost_user_socket=%s", vu_socket_path, 0),
FUSE_OPT_END
};
@@ -2078,9 +2080,11 @@ void fuse_lowlevel_help(void)
/* These are not all options, but the ones that are
potentially of interest to an end-user */
printf(
-" -o allow_other allow access by all users\n"
-" -o allow_root allow access by root\n"
-" -o auto_unmount auto unmount on process termination\n");
+" -o allow_other allow access by all users\n"
+" -o allow_root allow access by root\n"
+" --socket-path=PATH path for the vhost-user socket\n"
+" -o vhost_user_socket=PATH path for the vhost-user socket\n"
+" -o auto_unmount auto unmount on process termination\n");
}
void fuse_session_destroy(struct fuse_session *se)
diff --git a/contrib/virtiofsd/helper.c b/contrib/virtiofsd/helper.c
index 958a42b6f4..f67533f053 100644
--- a/contrib/virtiofsd/helper.c
+++ b/contrib/virtiofsd/helper.c
@@ -126,15 +126,15 @@ static const struct fuse_opt conn_info_opt_spec[] = {
void fuse_cmdline_help(void)
{
- printf(" -h --help print help\n"
- " -V --version print version\n"
- " -d -o debug enable debug output (implies -f)\n"
- " -f foreground operation\n"
- " -s disable multi-threaded operation\n"
- " -o clone_fd use separate fuse device fd for each thread\n"
- " (may improve performance)\n"
- " -o max_idle_threads the maximum number of idle worker threads\n"
- " allowed (default: 10)\n");
+ printf(" -h --help print help\n"
+ " -V --version print version\n"
+ " -d -o debug enable debug output (implies -f)\n"
+ " -f foreground operation\n"
+ " -s disable multi-threaded operation\n"
+ " -o clone_fd use separate fuse device fd for each thread\n"
+ " (may improve performance)\n"
+ " -o max_idle_threads the maximum number of idle worker threads\n"
+ " allowed (default: 10)\n");
}
static int fuse_helper_opt_proc(void *data, const char *arg, int key,
--
2.23.0