qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
To: "Philippe Mathieu-Daudé" <philmd@redhat.com>
Cc: m.mizuma@jp.fujitsu.com, berrange@redhat.com, slp@redhat.com,
	qemu-devel@nongnu.org, misono.tomohiro@jp.fujitsu.com,
	stefanha@redhat.com, vgoyal@redhat.com
Subject: Re: [PATCH v2 000/109] virtiofs daemon [all]
Date: Tue, 21 Jan 2020 17:01:39 +0000	[thread overview]
Message-ID: <20200121170139.GO2929@work-vm> (raw)
In-Reply-To: <a2099661-8c69-5cdb-2b17-21bf0842c8f5@redhat.com>

* Philippe Mathieu-Daudé (philmd@redhat.com) wrote:
> On 1/21/20 1:22 PM, Dr. David Alan Gilbert (git) wrote:
> > From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
> > 
> > Hi,
> >    This is a full set for virtiofsd - a daemon
> > that implements the user space side of virtiofs.
> > 
> > I've addressed most review comments from V1; we've got
> > 95 Reviewed-by's out of 110 - I'd like to get a PULL out ASAP.
> > 
> > The set pulls in a big chunk of the upstream libfuse library
> > (unmodified so that it's easy to check it really is upstream),
> > chops all the stuff out we don't need and then adds the
> > new transport we need.  I've formatted everything into qemu's code style -
> > using indent and the clang tools for the files I've imported.
> > 
> > We can't just link with libfuse, since we have to make ABI incompatible
> > changes for the new transport and it's quite invasive; the library is
> > designed to be the basis for multiple filesystems, but all on the same
> > transport.
> > 
> > Running this daemon is typically done with:
> > 
> >     ./virtiofsd --socket-path=/path/socket -o source=/path/to/fs
> > 
> > connected to a qemu that's then started with:
> >     -chardev socket,id=char0,path=/path/socket -device vhost-user-fs-pci,queue-size=1024,chardev=char0,tag=myfs
> > 
> > and then in the guest mount with:
> >     mount -t virtiofs myfs /mnt
> > 
> > Our development branch is: https://gitlab.com/virtio-fs/qemu/tree/virtio-fs-dev
> 
> FWIW this branch contains more than this series, because it failed to build
> on 32-bit:

Right; it's got a whole bunch of stuff that's not ready yet - that's why
it's -dev.

> $ make virtiofsd
>   CC      tools/virtiofsd/fuse_lowlevel.o
> tools/virtiofsd/fuse_lowlevel.c: In function 'do_removemapping':
> tools/virtiofsd/fuse_lowlevel.c:1956:60: error: format '%ld' expects
> argument of type 'long int', but argument 4 has type 'unsigned int'
> [-Werror=format=]
>              "do_removemapping: invalid in, expected %d * %ld, has %ld -
> %ld\n",
>                                                             ^
> tools/virtiofsd/fuse_lowlevel.c:1956:69: error: format '%ld' expects
> argument of type 'long int', but argument 5 has type 'size_t {aka unsigned
> int}' [-Werror=format=]
>              "do_removemapping: invalid in, expected %d * %ld, has %ld -
> %ld\n",
>                                                                      ^
> tools/virtiofsd/fuse_lowlevel.c:1956:75: error: format '%ld' expects
> argument of type 'long int', but argument 6 has type 'size_t {aka unsigned
> int}' [-Werror=format=]
>              "do_removemapping: invalid in, expected %d * %ld, has %ld -
> %ld\n",
> 
>    ^
> 
> And the offending patch is not included in the 109:
> 
> $ git show 62d82cfbe5a
> commit 62d82cfbe5a2ad05ae3215f2461b76aa9915108d
> Author: Dr. David Alan Gilbert <dgilbert@redhat.com>
> Date:   Fri Jul 6 18:03:49 2018 +0100
> 
>     DAX: virtiofsd: Add setup/remove mappings fuse commands
> 
> Consider pushing tags with version, so it is easier to diff (virtio-fs-dev
> got force-pushed).

Yep, I already did; it's:

https://gitlab.com/virtio-fs/qemu/tree/virtio-fs-as-posted-2020-01-21

> 
> We don't need libslirp/capstone/dtc but they are still built:

Hmm now wth are those dependencies coming from....

Dave

> $ make virtiofsd
>   GEN     config-host.h
> make[1]: Entering directory 'slirp'
>   CC      slirp/src/state.o
>   CC      slirp/src/tcp_timer.o
>   CC      slirp/src/dhcpv6.o
>   CC      slirp/src/ip_input.o
>   CC      slirp/src/ip6_icmp.o
>   CC      slirp/src/bootp.o
>   CC      slirp/src/ip6_input.o
>   CC      slirp/src/slirp.o
>   CC      slirp/src/vmstate.o
>   CC      slirp/src/ip_output.o
>   CC      slirp/src/ncsi.o
>   CC      slirp/src/tcp_output.o
>   CC      slirp/src/ndp_table.o
>   CC      slirp/src/version.o
>   CC      slirp/src/misc.o
>   CC      slirp/src/ip6_output.o
>   CC      slirp/src/mbuf.o
>   CC      slirp/src/tftp.o
>   CC      slirp/src/arp_table.o
>   CC      slirp/src/util.o
>   CC      slirp/src/socket.o
>   CC      slirp/src/sbuf.o
>   CC      slirp/src/stream.o
>   CC      slirp/src/dnssearch.o
>   CC      slirp/src/udp.o
>   CC      slirp/src/tcp_input.o
>   CC      slirp/src/if.o
>   CC      slirp/src/cksum.o
>   CC      slirp/src/tcp_subr.o
>   CC      slirp/src/udp6.o
>   CC      slirp/src/ip_icmp.o
>   AR      slirp/libslirp.a
> make[1]: Leaving directory 'slirp'
>          DEP dtc/libfdt/fdt_overlay.c
>          DEP dtc/libfdt/fdt_addresses.c
>          DEP dtc/libfdt/fdt_empty_tree.c
>          DEP dtc/libfdt/fdt_strerror.c
>          DEP dtc/libfdt/fdt_rw.c
>          DEP dtc/libfdt/fdt_sw.c
>          DEP dtc/libfdt/fdt_wip.c
>          DEP dtc/libfdt/fdt_ro.c
>          DEP dtc/libfdt/fdt.c
>          DEP dtc/util.c
>          DEP dtc/fdtoverlay.c
>          DEP dtc/fdtput.c
>          DEP dtc/fdtget.c
>          DEP dtc/fdtdump.c
>          DEP convert-dtsv0-lexer.lex.c
>          DEP dtc/srcpos.c
>          BISON dtc-parser.tab.c
>          DEP dtc-parser.tab.c
>          LEX dtc-lexer.lex.c
>          DEP dtc-lexer.lex.c
>          DEP dtc/treesource.c
>          DEP dtc/livetree.c
>          DEP dtc/fstree.c
>          DEP dtc/flattree.c
>          DEP dtc/dtc.c
>          DEP dtc/data.c
>          DEP dtc/checks.c
>          CC libfdt/fdt.o
>          CC libfdt/fdt_ro.o
>          CC libfdt/fdt_wip.o
>          CC libfdt/fdt_sw.o
>          CC libfdt/fdt_rw.o
>          CC libfdt/fdt_strerror.o
>          CC libfdt/fdt_empty_tree.o
>          CC libfdt/fdt_addresses.o
>          CC libfdt/fdt_overlay.o
>          AR libfdt/libfdt.a
> arm-linux-gnueabihf-ar: creating libfdt/libfdt.a
> a - libfdt/fdt.o
> a - libfdt/fdt_ro.o
> a - libfdt/fdt_wip.o
> a - libfdt/fdt_sw.o
> a - libfdt/fdt_rw.o
> a - libfdt/fdt_strerror.o
> a - libfdt/fdt_empty_tree.o
> a - libfdt/fdt_addresses.o
> a - libfdt/fdt_overlay.o
>   CC      cs.o
>   CC      utils.o
>   CC      SStream.o
>   CC      MCInstrDesc.o
>   CC      MCRegisterInfo.o
>   CC      arch/ARM/ARMDisassembler.o
>   CC      arch/ARM/ARMInstPrinter.o
>   CC      arch/ARM/ARMMapping.o
>   CC      arch/ARM/ARMModule.o
>   CC      arch/AArch64/AArch64BaseInfo.o
>   CC      arch/AArch64/AArch64Disassembler.o
>   CC      arch/AArch64/AArch64InstPrinter.o
>   CC      arch/AArch64/AArch64Mapping.o
>   CC      arch/AArch64/AArch64Module.o
>   CC      arch/Mips/MipsDisassembler.o
>   CC      arch/Mips/MipsInstPrinter.o
>   CC      arch/Mips/MipsMapping.o
>   CC      arch/Mips/MipsModule.o
>   CC      arch/PowerPC/PPCDisassembler.o
>   CC      arch/PowerPC/PPCInstPrinter.o
>   CC      arch/PowerPC/PPCMapping.o
>   CC      arch/PowerPC/PPCModule.o
>   CC      arch/Sparc/SparcDisassembler.o
>   CC      arch/Sparc/SparcInstPrinter.o
>   CC      arch/Sparc/SparcMapping.o
>   CC      arch/Sparc/SparcModule.o
>   CC      arch/SystemZ/SystemZDisassembler.o
>   CC      arch/SystemZ/SystemZInstPrinter.o
>   CC      arch/SystemZ/SystemZMapping.o
>   CC      arch/SystemZ/SystemZModule.o
>   CC      arch/SystemZ/SystemZMCTargetDesc.o
>   CC      arch/X86/X86DisassemblerDecoder.o
>   CC      arch/X86/X86Disassembler.o
>   CC      arch/X86/X86IntelInstPrinter.o
>   CC      arch/X86/X86ATTInstPrinter.o
>   CC      arch/X86/X86Mapping.o
>   CC      arch/X86/X86Module.o
>   CC      arch/XCore/XCoreDisassembler.o
>   CC      arch/XCore/XCoreInstPrinter.o
>   CC      arch/XCore/XCoreMapping.o
>   CC      arch/XCore/XCoreModule.o
>   CC      MCInst.o
>   AR      libcapstone.a
>   CC      tools/virtiofsd/buffer.o
>   CC      tools/virtiofsd/fuse_opt.o
>   CC      tools/virtiofsd/fuse_log.o
>   CC      tools/virtiofsd/fuse_lowlevel.o
>   ...
> 
> FYI Paolo queued this patch, so libfdt shouldn't get compiled anymore:
> https://www.mail-archive.com/qemu-devel@nongnu.org/msg671667.html
> 
> > This code is going into tools/virtiofsd  based on the previous long
> > discussion.
> > 
> > Thank you to all those who have contributed code and to those who have
> > reviewed the previous version.
> > 
> > Dave
> > 
> > Dr. David Alan Gilbert (35):
> >    virtiofsd: Pull in upstream headers
> >    virtiofsd: Pull in kernel's fuse.h
> >    virtiofsd: Add auxiliary .c's
> >    virtiofsd: Add fuse_lowlevel.c
> >    virtiofsd: Add passthrough_ll
> >    virtiofsd: Trim down imported files
> >    virtiofsd: Format imported files to qemu style
> >    virtiofsd: Fix fuse_daemonize ignored return values
> >    virtiofsd: Fix common header and define for QEMU builds
> >    virtiofsd: Trim out compatibility code
> >    virtiofsd: Add options for virtio
> >    virtiofsd: Open vhost connection instead of mounting
> >    virtiofsd: Start wiring up vhost-user
> >    virtiofsd: Add main virtio loop
> >    virtiofsd: get/set features callbacks
> >    virtiofsd: Start queue threads
> >    virtiofsd: Poll kick_fd for queue
> >    virtiofsd: Start reading commands from queue
> >    virtiofsd: Send replies to messages
> >    virtiofsd: Keep track of replies
> >    virtiofsd: Add Makefile wiring for virtiofsd contrib
> >    virtiofsd: Fast path for virtio read
> >    virtiofs: Add maintainers entry
> >    virtiofsd: Plumb fuse_bufvec through to do_write_buf
> >    virtiofsd: Pass write iov's all the way through
> >    virtiofsd: cap-ng helpers
> >    docs:  Add docs/tools
> >    virtiofsd: Handle reinit
> >    virtiofsd: Handle hard reboot
> >    virtiofsd: Kill threads when queues are stopped
> >    vhost-user: Print unexpected slave message types
> >    contrib/libvhost-user: Protect slave fd with mutex
> >    virtiofsd: Clean up inodes on destroy
> >    libvhost-user: Fix some memtable remap cases
> >    virtiofsd: Convert lo_destroy to take the lo->mutex lock itself
> > 
> > Eric Ren (1):
> >    virtiofsd: fix incorrect error handling in lo_do_lookup
> > 
> > Eryu Guan (3):
> >    virtiofsd: print log only when priority is high enough
> >    virtiofsd: convert more fprintf and perror to use fuse log infra
> >    virtiofsd: stop all queue threads on exit in virtio_loop()
> > 
> > Jiufei Xue (1):
> >    virtiofsd: support nanosecond resolution for file timestamp
> > 
> > Liu Bo (6):
> >    virtiofsd: fix error handling in main()
> >    virtiofsd: cleanup allocated resource in se
> >    virtiofsd: fix memory leak on lo.source
> >    virtiofsd: add helper for lo_data cleanup
> >    virtiofsd: enable PARALLEL_DIROPS during INIT
> >    Virtiofsd: fix memory leak on fuse queueinfo
> > 
> > Masayoshi Mizuma (4):
> >    virtiofsd: Add ID to the log with FUSE_LOG_DEBUG level
> >    virtiofsd: Add timestamp to the log with FUSE_LOG_DEBUG level
> >    virtiofsd: Prevent multiply running with same vhost_user_socket
> >    virtiofsd: add some options to the help message
> > 
> > Miklos Szeredi (10):
> >    virtiofsd: passthrough_ll: add fallback for racy ops
> >    virtiofsd: passthrough_ll: add renameat2 support
> >    virtiofsd: passthrough_ll: disable readdirplus on cache=never
> >    virtiofsd: passthrough_ll: control readdirplus
> >    virtiofsd: rename unref_inode() to unref_inode_lolocked()
> >    virtiofsd: fail when parent inode isn't known in lo_do_lookup()
> >    virtiofsd: extract root inode init into setup_root()
> >    virtiofsd: passthrough_ll: clean up cache related options
> >    virtiofsd: passthrough_ll: use hashtable
> >    virtiofsd: passthrough_ll: fix refcounting on remove/rename
> > 
> > Misono Tomohiro (1):
> >    virtiofsd: Fix data corruption with O_APPEND write in writeback mode
> > 
> > Peng Tao (1):
> >    virtiofsd: do not always set FUSE_FLOCK_LOCKS
> > 
> > Stefan Hajnoczi (37):
> >    virtiofsd: remove mountpoint dummy argument
> >    virtiofsd: remove unused notify reply support
> >    virtiofsd: add -o source=PATH to help output
> >    virtiofsd: add --fd=FDNUM fd passing option
> >    virtiofsd: make -f (foreground) the default
> >    virtiofsd: add vhost-user.json file
> >    virtiofsd: add --print-capabilities option
> >    virtiofsd: passthrough_ll: add lo_map for ino/fh indirection
> >    virtiofsd: passthrough_ll: add ino_map to hide lo_inode pointers
> >    virtiofsd: passthrough_ll: add dirp_map to hide lo_dirp pointers
> >    virtiofsd: passthrough_ll: add fd_map to hide file descriptors
> >    virtiofsd: validate path components
> >    virtiofsd: add fuse_mbuf_iter API
> >    virtiofsd: validate input buffer sizes in do_write_buf()
> >    virtiofsd: check input buffer size in fuse_lowlevel.c ops
> >    virtiofsd: prevent ".." escape in lo_do_lookup()
> >    virtiofsd: prevent ".." escape in lo_do_readdir()
> >    virtiofsd: use /proc/self/fd/ O_PATH file descriptor
> >    virtiofsd: sandbox mount namespace
> >    virtiofsd: move to an empty network namespace
> >    virtiofsd: move to a new pid namespace
> >    virtiofsd: add seccomp whitelist
> >    virtiofsd: set maximum RLIMIT_NOFILE limit
> >    virtiofsd: fix libfuse information leaks
> >    virtiofsd: add security guide document
> >    virtiofsd: add --syslog command-line option
> >    virtiofsd: use fuse_lowlevel_is_virtio() in fuse_session_destroy()
> >    virtiofsd: prevent fv_queue_thread() vs virtio_loop() races
> >    virtiofsd: make lo_release() atomic
> >    virtiofsd: prevent races with lo_dirp_put()
> >    virtiofsd: rename inode->refcount to inode->nlookup
> >    virtiofsd: add man page
> >    virtiofsd: introduce inode refcount to prevent use-after-free
> >    virtiofsd: process requests in a thread pool
> >    virtiofsd: prevent FUSE_INIT/FUSE_DESTROY races
> >    virtiofsd: fix lo_destroy() resource leaks
> >    virtiofsd: add --thread-pool-size=NUM option
> > 
> > Vivek Goyal (6):
> >    virtiofsd: Make fsync work even if only inode is passed in
> >    virtiofsd: passthrough_ll: create new files in caller's context
> >    virtiofsd: Parse flag FUSE_WRITE_KILL_PRIV
> >    virtiofsd: Drop CAP_FSETID if client asked for it
> >    virtiofsd: Support remote posix locks
> >    virtiofsd: Reset O_DIRECT flag during file open
> > 
> > Xiao Yang (2):
> >    vitriofsd/passthrough_ll: fix fallocate() ifdefs
> >    virtiofsd/passthrough_ll: Pass errno to fuse_reply_err()
> > 
> > piaojun (2):
> >    virtiofsd: add definition of fuse_buf_writev()
> >    virtiofsd: use fuse_buf_writev to replace fuse_buf_write for better
> >      performance
> > 
> >   .gitignore                                |    1 +
> >   MAINTAINERS                               |    8 +
> >   Makefile                                  |   27 +-
> >   Makefile.objs                             |    1 +
> >   configure                                 |   16 +
> >   contrib/libvhost-user/libvhost-user.c     |   57 +-
> >   contrib/libvhost-user/libvhost-user.h     |    6 +
> >   docs/index.rst                            |    1 +
> >   docs/interop/vhost-user.json              |    4 +-
> >   docs/tools/conf.py                        |   16 +
> >   docs/tools/index.rst                      |   14 +
> >   docs/tools/virtiofsd-security.rst         |  118 +
> >   hw/virtio/vhost-user.c                    |    2 +-
> >   include/standard-headers/linux/fuse.h     |  891 ++++++
> >   scripts/update-linux-headers.sh           |    1 +
> >   tools/virtiofsd/50-qemu-virtiofsd.json.in |    5 +
> >   tools/virtiofsd/Makefile.objs             |   12 +
> >   tools/virtiofsd/buffer.c                  |  351 +++
> >   tools/virtiofsd/fuse.h                    | 1249 +++++++++
> >   tools/virtiofsd/fuse_common.h             |  860 ++++++
> >   tools/virtiofsd/fuse_i.h                  |  115 +
> >   tools/virtiofsd/fuse_log.c                |   40 +
> >   tools/virtiofsd/fuse_log.h                |   74 +
> >   tools/virtiofsd/fuse_lowlevel.c           | 2779 +++++++++++++++++++
> >   tools/virtiofsd/fuse_lowlevel.h           | 2023 ++++++++++++++
> >   tools/virtiofsd/fuse_misc.h               |   60 +
> >   tools/virtiofsd/fuse_opt.c                |  449 +++
> >   tools/virtiofsd/fuse_opt.h                |  272 ++
> >   tools/virtiofsd/fuse_signals.c            |   97 +
> >   tools/virtiofsd/fuse_virtio.c             |  985 +++++++
> >   tools/virtiofsd/fuse_virtio.h             |   33 +
> >   tools/virtiofsd/helper.c                  |  349 +++
> >   tools/virtiofsd/passthrough_helpers.h     |   51 +
> >   tools/virtiofsd/passthrough_ll.c          | 3006 +++++++++++++++++++++
> >   tools/virtiofsd/seccomp.c                 |  164 ++
> >   tools/virtiofsd/seccomp.h                 |   16 +
> >   tools/virtiofsd/virtiofsd.texi            |  104 +
> >   37 files changed, 14242 insertions(+), 15 deletions(-)
> >   create mode 100644 docs/tools/conf.py
> >   create mode 100644 docs/tools/index.rst
> >   create mode 100644 docs/tools/virtiofsd-security.rst
> >   create mode 100644 include/standard-headers/linux/fuse.h
> >   create mode 100644 tools/virtiofsd/50-qemu-virtiofsd.json.in
> >   create mode 100644 tools/virtiofsd/Makefile.objs
> >   create mode 100644 tools/virtiofsd/buffer.c
> >   create mode 100644 tools/virtiofsd/fuse.h
> >   create mode 100644 tools/virtiofsd/fuse_common.h
> >   create mode 100644 tools/virtiofsd/fuse_i.h
> >   create mode 100644 tools/virtiofsd/fuse_log.c
> >   create mode 100644 tools/virtiofsd/fuse_log.h
> >   create mode 100644 tools/virtiofsd/fuse_lowlevel.c
> >   create mode 100644 tools/virtiofsd/fuse_lowlevel.h
> >   create mode 100644 tools/virtiofsd/fuse_misc.h
> >   create mode 100644 tools/virtiofsd/fuse_opt.c
> >   create mode 100644 tools/virtiofsd/fuse_opt.h
> >   create mode 100644 tools/virtiofsd/fuse_signals.c
> >   create mode 100644 tools/virtiofsd/fuse_virtio.c
> >   create mode 100644 tools/virtiofsd/fuse_virtio.h
> >   create mode 100644 tools/virtiofsd/helper.c
> >   create mode 100644 tools/virtiofsd/passthrough_helpers.h
> >   create mode 100644 tools/virtiofsd/passthrough_ll.c
> >   create mode 100644 tools/virtiofsd/seccomp.c
> >   create mode 100644 tools/virtiofsd/seccomp.h
> >   create mode 100644 tools/virtiofsd/virtiofsd.texi
> > 
> 
--
Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK



      reply	other threads:[~2020-01-21 17:06 UTC|newest]

Thread overview: 141+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-01-21 12:22 [PATCH v2 000/109] virtiofs daemon [all] Dr. David Alan Gilbert (git)
2020-01-21 12:22 ` [PATCH v2 001/109] virtiofsd: Pull in upstream headers Dr. David Alan Gilbert (git)
2020-01-21 12:22 ` [PATCH v2 002/109] virtiofsd: Pull in kernel's fuse.h Dr. David Alan Gilbert (git)
2020-01-21 12:22 ` [PATCH v2 003/109] virtiofsd: Add auxiliary .c's Dr. David Alan Gilbert (git)
2020-01-21 12:22 ` [PATCH v2 004/109] virtiofsd: Add fuse_lowlevel.c Dr. David Alan Gilbert (git)
2020-01-21 12:22 ` [PATCH v2 005/109] virtiofsd: Add passthrough_ll Dr. David Alan Gilbert (git)
2020-01-21 12:22 ` [PATCH v2 006/109] virtiofsd: Trim down imported files Dr. David Alan Gilbert (git)
2020-01-22  2:48   ` Xiao Yang
2020-01-22 10:41     ` Dr. David Alan Gilbert
2020-01-21 12:22 ` [PATCH v2 007/109] virtiofsd: Format imported files to qemu style Dr. David Alan Gilbert (git)
2020-01-21 12:22 ` [PATCH v2 008/109] virtiofsd: remove mountpoint dummy argument Dr. David Alan Gilbert (git)
2020-01-21 12:22 ` [PATCH v2 009/109] virtiofsd: remove unused notify reply support Dr. David Alan Gilbert (git)
2020-01-21 12:22 ` [PATCH v2 010/109] virtiofsd: Fix fuse_daemonize ignored return values Dr. David Alan Gilbert (git)
2020-01-21 15:24   ` Philippe Mathieu-Daudé
2020-01-21 12:22 ` [PATCH v2 011/109] virtiofsd: Fix common header and define for QEMU builds Dr. David Alan Gilbert (git)
2020-01-21 15:24   ` Philippe Mathieu-Daudé
2020-01-22 15:32     ` Philippe Mathieu-Daudé
2020-01-22 16:52       ` Dr. David Alan Gilbert
2020-01-21 12:22 ` [PATCH v2 012/109] virtiofsd: Trim out compatibility code Dr. David Alan Gilbert (git)
2020-01-21 12:22 ` [PATCH v2 013/109] vitriofsd/passthrough_ll: fix fallocate() ifdefs Dr. David Alan Gilbert (git)
2020-01-21 12:22 ` [PATCH v2 014/109] virtiofsd: Make fsync work even if only inode is passed in Dr. David Alan Gilbert (git)
2020-01-21 12:22 ` [PATCH v2 015/109] virtiofsd: Add options for virtio Dr. David Alan Gilbert (git)
2020-01-22  6:53   ` Misono Tomohiro
2020-01-21 12:23 ` [PATCH v2 016/109] virtiofsd: add -o source=PATH to help output Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 017/109] virtiofsd: Open vhost connection instead of mounting Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 018/109] virtiofsd: Start wiring up vhost-user Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 019/109] virtiofsd: Add main virtio loop Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 020/109] virtiofsd: get/set features callbacks Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 021/109] virtiofsd: Start queue threads Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 022/109] virtiofsd: Poll kick_fd for queue Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 023/109] virtiofsd: Start reading commands from queue Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 024/109] virtiofsd: Send replies to messages Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 025/109] virtiofsd: Keep track of replies Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 026/109] virtiofsd: Add Makefile wiring for virtiofsd contrib Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 027/109] virtiofsd: Fast path for virtio read Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 028/109] virtiofsd: add --fd=FDNUM fd passing option Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 029/109] virtiofsd: make -f (foreground) the default Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 030/109] virtiofsd: add vhost-user.json file Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 031/109] virtiofsd: add --print-capabilities option Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 032/109] virtiofs: Add maintainers entry Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 033/109] virtiofsd: passthrough_ll: create new files in caller's context Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 034/109] virtiofsd: passthrough_ll: add lo_map for ino/fh indirection Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 035/109] virtiofsd: passthrough_ll: add ino_map to hide lo_inode pointers Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 036/109] virtiofsd: passthrough_ll: add dirp_map to hide lo_dirp pointers Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 037/109] virtiofsd: passthrough_ll: add fd_map to hide file descriptors Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 038/109] virtiofsd: passthrough_ll: add fallback for racy ops Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 039/109] virtiofsd: validate path components Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 040/109] virtiofsd: Plumb fuse_bufvec through to do_write_buf Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 041/109] virtiofsd: Pass write iov's all the way through Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 042/109] virtiofsd: add fuse_mbuf_iter API Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 043/109] virtiofsd: validate input buffer sizes in do_write_buf() Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 044/109] virtiofsd: check input buffer size in fuse_lowlevel.c ops Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 045/109] virtiofsd: prevent ".." escape in lo_do_lookup() Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 046/109] virtiofsd: prevent ".." escape in lo_do_readdir() Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 047/109] virtiofsd: use /proc/self/fd/ O_PATH file descriptor Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 048/109] virtiofsd: sandbox mount namespace Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 049/109] virtiofsd: move to an empty network namespace Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 050/109] virtiofsd: move to a new pid namespace Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 051/109] virtiofsd: add seccomp whitelist Dr. David Alan Gilbert (git)
2020-01-21 15:54   ` Philippe Mathieu-Daudé
2020-01-21 19:49     ` Dr. David Alan Gilbert
2020-01-21 20:53       ` Philippe Mathieu-Daudé
2020-01-24  9:46   ` Florian Weimer
2020-01-24  9:51     ` Dr. David Alan Gilbert
2020-01-24  9:57     ` Dr. David Alan Gilbert
2020-01-24 10:06       ` Florian Weimer
2020-01-21 12:23 ` [PATCH v2 052/109] virtiofsd: Parse flag FUSE_WRITE_KILL_PRIV Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 053/109] virtiofsd: cap-ng helpers Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 054/109] virtiofsd: Drop CAP_FSETID if client asked for it Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 055/109] virtiofsd: set maximum RLIMIT_NOFILE limit Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 056/109] virtiofsd: fix libfuse information leaks Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 057/109] docs: Add docs/tools Dr. David Alan Gilbert (git)
2020-01-22 15:19   ` Philippe Mathieu-Daudé
2020-01-21 12:23 ` [PATCH v2 058/109] virtiofsd: add security guide document Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 059/109] virtiofsd: add --syslog command-line option Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 060/109] virtiofsd: print log only when priority is high enough Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 061/109] virtiofsd: Add ID to the log with FUSE_LOG_DEBUG level Dr. David Alan Gilbert (git)
2020-01-22 15:27   ` Philippe Mathieu-Daudé
2020-01-21 12:23 ` [PATCH v2 062/109] virtiofsd: Add timestamp " Dr. David Alan Gilbert (git)
2020-01-22 15:36   ` Philippe Mathieu-Daudé
2020-01-22 15:57     ` Dr. David Alan Gilbert
2020-01-21 12:23 ` [PATCH v2 063/109] virtiofsd: Handle reinit Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 064/109] virtiofsd: Handle hard reboot Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 065/109] virtiofsd: Kill threads when queues are stopped Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 066/109] vhost-user: Print unexpected slave message types Dr. David Alan Gilbert (git)
2020-01-22 15:41   ` Philippe Mathieu-Daudé
2020-01-22 16:00     ` Dr. David Alan Gilbert
2020-01-21 12:23 ` [PATCH v2 067/109] contrib/libvhost-user: Protect slave fd with mutex Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 068/109] virtiofsd: passthrough_ll: add renameat2 support Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 069/109] virtiofsd: passthrough_ll: disable readdirplus on cache=never Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 070/109] virtiofsd: passthrough_ll: control readdirplus Dr. David Alan Gilbert (git)
2020-01-22  3:11   ` Misono Tomohiro
2020-01-22 17:42     ` Dr. David Alan Gilbert
2020-01-21 12:23 ` [PATCH v2 071/109] virtiofsd: rename unref_inode() to unref_inode_lolocked() Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 072/109] virtiofsd: fail when parent inode isn't known in lo_do_lookup() Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 073/109] virtiofsd: extract root inode init into setup_root() Dr. David Alan Gilbert (git)
2020-01-22  1:31   ` Misono Tomohiro
2020-01-21 12:23 ` [PATCH v2 074/109] virtiofsd: passthrough_ll: clean up cache related options Dr. David Alan Gilbert (git)
2020-01-21 12:23 ` [PATCH v2 075/109] virtiofsd: passthrough_ll: use hashtable Dr. David Alan Gilbert (git)
2020-01-21 12:24 ` [PATCH v2 076/109] virtiofsd: Clean up inodes on destroy Dr. David Alan Gilbert (git)
2020-01-21 12:24 ` [PATCH v2 077/109] virtiofsd: support nanosecond resolution for file timestamp Dr. David Alan Gilbert (git)
2020-01-21 12:24 ` [PATCH v2 078/109] virtiofsd: fix error handling in main() Dr. David Alan Gilbert (git)
2020-01-21 12:24 ` [PATCH v2 079/109] virtiofsd: cleanup allocated resource in se Dr. David Alan Gilbert (git)
2020-01-21 12:24 ` [PATCH v2 080/109] virtiofsd: fix memory leak on lo.source Dr. David Alan Gilbert (git)
2020-01-22  1:54   ` Misono Tomohiro
2020-01-21 12:24 ` [PATCH v2 081/109] virtiofsd: add helper for lo_data cleanup Dr. David Alan Gilbert (git)
2020-01-21 12:24 ` [PATCH v2 082/109] virtiofsd: Prevent multiply running with same vhost_user_socket Dr. David Alan Gilbert (git)
2020-01-21 12:24 ` [PATCH v2 083/109] virtiofsd: enable PARALLEL_DIROPS during INIT Dr. David Alan Gilbert (git)
2020-01-21 12:24 ` [PATCH v2 084/109] virtiofsd: fix incorrect error handling in lo_do_lookup Dr. David Alan Gilbert (git)
2020-01-21 12:24 ` [PATCH v2 085/109] Virtiofsd: fix memory leak on fuse queueinfo Dr. David Alan Gilbert (git)
2020-01-21 12:24 ` [PATCH v2 086/109] virtiofsd: Support remote posix locks Dr. David Alan Gilbert (git)
2020-01-21 12:24 ` [PATCH v2 087/109] virtiofsd: use fuse_lowlevel_is_virtio() in fuse_session_destroy() Dr. David Alan Gilbert (git)
2020-01-21 12:24 ` [PATCH v2 088/109] virtiofsd: prevent fv_queue_thread() vs virtio_loop() races Dr. David Alan Gilbert (git)
2020-01-21 12:24 ` [PATCH v2 089/109] virtiofsd: make lo_release() atomic Dr. David Alan Gilbert (git)
2020-01-21 12:24 ` [PATCH v2 090/109] virtiofsd: prevent races with lo_dirp_put() Dr. David Alan Gilbert (git)
2020-01-21 12:24 ` [PATCH v2 091/109] virtiofsd: rename inode->refcount to inode->nlookup Dr. David Alan Gilbert (git)
2020-01-21 12:24 ` [PATCH v2 092/109] libvhost-user: Fix some memtable remap cases Dr. David Alan Gilbert (git)
2020-01-21 12:24 ` [PATCH v2 093/109] virtiofsd: add man page Dr. David Alan Gilbert (git)
2020-01-21 15:20   ` Philippe Mathieu-Daudé
2020-01-21 12:24 ` [PATCH v2 094/109] virtiofsd: passthrough_ll: fix refcounting on remove/rename Dr. David Alan Gilbert (git)
2020-01-21 12:24 ` [PATCH v2 095/109] virtiofsd: introduce inode refcount to prevent use-after-free Dr. David Alan Gilbert (git)
2020-01-21 12:24 ` [PATCH v2 096/109] virtiofsd: do not always set FUSE_FLOCK_LOCKS Dr. David Alan Gilbert (git)
2020-01-21 12:24 ` [PATCH v2 097/109] virtiofsd: convert more fprintf and perror to use fuse log infra Dr. David Alan Gilbert (git)
2020-01-22 15:44   ` Philippe Mathieu-Daudé
2020-01-21 12:24 ` [PATCH v2 098/109] virtiofsd: Reset O_DIRECT flag during file open Dr. David Alan Gilbert (git)
2020-01-21 12:24 ` [PATCH v2 099/109] virtiofsd: Fix data corruption with O_APPEND write in writeback mode Dr. David Alan Gilbert (git)
2020-01-21 12:24 ` [PATCH v2 100/109] virtiofsd: add definition of fuse_buf_writev() Dr. David Alan Gilbert (git)
2020-01-21 12:24 ` [PATCH v2 101/109] virtiofsd: use fuse_buf_writev to replace fuse_buf_write for better performance Dr. David Alan Gilbert (git)
2020-01-21 12:24 ` [PATCH v2 102/109] virtiofsd: process requests in a thread pool Dr. David Alan Gilbert (git)
2020-01-21 12:24 ` [PATCH v2 103/109] virtiofsd: prevent FUSE_INIT/FUSE_DESTROY races Dr. David Alan Gilbert (git)
2020-01-21 12:24 ` [PATCH v2 104/109] virtiofsd: fix lo_destroy() resource leaks Dr. David Alan Gilbert (git)
2020-01-21 12:24 ` [PATCH v2 105/109] virtiofsd: add --thread-pool-size=NUM option Dr. David Alan Gilbert (git)
2020-01-21 12:24 ` [PATCH v2 106/109] virtiofsd: Convert lo_destroy to take the lo->mutex lock itself Dr. David Alan Gilbert (git)
2020-01-21 12:24 ` [PATCH v2 107/109] virtiofsd/passthrough_ll: Pass errno to fuse_reply_err() Dr. David Alan Gilbert (git)
2020-01-21 12:24 ` [PATCH v2 108/109] virtiofsd: stop all queue threads on exit in virtio_loop() Dr. David Alan Gilbert (git)
2020-01-21 12:24 ` [PATCH v2 109/109] virtiofsd: add some options to the help message Dr. David Alan Gilbert (git)
2020-01-22  6:35   ` Misono Tomohiro
2020-01-22 18:11     ` Dr. David Alan Gilbert
2020-01-21 14:56 ` [PATCH v2 000/109] virtiofs daemon [all] no-reply
2020-01-21 15:41 ` Philippe Mathieu-Daudé
2020-01-21 17:01   ` Dr. David Alan Gilbert [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200121170139.GO2929@work-vm \
    --to=dgilbert@redhat.com \
    --cc=berrange@redhat.com \
    --cc=m.mizuma@jp.fujitsu.com \
    --cc=misono.tomohiro@jp.fujitsu.com \
    --cc=philmd@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=slp@redhat.com \
    --cc=stefanha@redhat.com \
    --cc=vgoyal@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).