On Thu, Dec 12, 2019 at 04:38:37PM +0000, Dr. David Alan Gilbert (git) wrote: > From: Liu Bo <bo.liu@linux.alibaba.com> > > Neither fuse_parse_cmdline() nor fuse_opt_parse() goes to the right place > to do cleanup. > > Signed-off-by: Liu Bo <bo.liu@linux.alibaba.com> > --- > tools/virtiofsd/passthrough_ll.c | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-) Reviewed-by: Daniel P. Berrangé <berrange@redhat.com> Regards, Daniel
diff --git a/tools/virtiofsd/passthrough_ll.c b/tools/virtiofsd/passthrough_ll.c index c526d6f4f6..33092de65a 100644 --- a/tools/virtiofsd/passthrough_ll.c +++ b/tools/virtiofsd/passthrough_ll.c @@ -2475,13 +2475,14 @@ int main(int argc, char *argv[]) lo_map_init(&lo.fd_map); if (fuse_parse_cmdline(&args, &opts) != 0) { - return 1; + goto err_out1; } fuse_set_log_func(log_func); use_syslog = opts.syslog; if (use_syslog) { openlog("virtiofsd", LOG_PID, LOG_DAEMON); } + if (opts.show_help) { printf("usage: %s [options]\n\n", argv[0]); fuse_cmdline_help(); @@ -2500,7 +2501,7 @@ int main(int argc, char *argv[]) } if (fuse_opt_parse(&args, &lo, lo_opts, NULL) == -1) { - return 1; + goto err_out1; } /*