[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 000/111] virtiofs queue
From: |
Dr. David Alan Gilbert (git) |
Subject: |
[PULL 000/111] virtiofs queue |
Date: |
Thu, 23 Jan 2020 11:56:50 +0000 |
From: "Dr. David Alan Gilbert" <address@hidden>
The following changes since commit 3e08b2b9cb64bff2b73fa9128c0e49bfcde0dd40:
Merge remote-tracking branch 'remotes/philmd-gitlab/tags/edk2-next-20200121'
into staging (2020-01-21 15:29:25 +0000)
are available in the Git repository at:
address@hidden:dagrh/qemu.git tags/pull-virtiofs-20200123
for you to fetch changes up to 87509325f70c78a28683f9460699915ea3300091:
virtiofsd: add some options to the help message (2020-01-23 10:54:49 +0000)
----------------------------------------------------------------
virtiofsd first pull
Import our virtiofsd.
This pulls in the daemon to drive a file system connected to the
existing qemu virtiofsd device.
It's derived from upstream libfuse with lots of changes (and a lot
trimmed out).
The daemon lives in the newly created qemu/tools/virtiofsd
Signed-off-by: Dr. David Alan Gilbert <address@hidden>
----------------------------------------------------------------
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 (2):
virtiofsd: Fix data corruption with O_APPEND write in writeback mode
virtiofsd: passthrough_ll: Use cache_readdir for directory open
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 (3):
virtiofsd: Remove unused enum fuse_buf_copy_flags
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 | 28 +-
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 | 816 ++++++++
tools/virtiofsd/fuse_i.h | 115 ++
tools/virtiofsd/fuse_log.c | 41 +
tools/virtiofsd/fuse_log.h | 74 +
tools/virtiofsd/fuse_lowlevel.c | 2761 ++++++++++++++++++++++++++
tools/virtiofsd/fuse_lowlevel.h | 1991 +++++++++++++++++++
tools/virtiofsd/fuse_misc.h | 60 +
tools/virtiofsd/fuse_opt.c | 450 +++++
tools/virtiofsd/fuse_opt.h | 272 +++
tools/virtiofsd/fuse_signals.c | 98 +
tools/virtiofsd/fuse_virtio.c | 986 ++++++++++
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 | 165 ++
tools/virtiofsd/seccomp.h | 16 +
tools/virtiofsd/virtiofsd.texi | 104 +
37 files changed, 14154 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
- [PULL 000/111] virtiofs queue,
Dr. David Alan Gilbert (git) <=
- [PULL 002/111] virtiofsd: Pull in kernel's fuse.h, Dr. David Alan Gilbert (git), 2020/01/23
- [PULL 008/111] virtiofsd: remove mountpoint dummy argument, Dr. David Alan Gilbert (git), 2020/01/23
- [PULL 003/111] virtiofsd: Add auxiliary .c's, Dr. David Alan Gilbert (git), 2020/01/23
- [PULL 010/111] virtiofsd: Remove unused enum fuse_buf_copy_flags, Dr. David Alan Gilbert (git), 2020/01/23
- [PULL 006/111] virtiofsd: Trim down imported files, Dr. David Alan Gilbert (git), 2020/01/23
- [PULL 009/111] virtiofsd: remove unused notify reply support, Dr. David Alan Gilbert (git), 2020/01/23
- [PULL 011/111] virtiofsd: Fix fuse_daemonize ignored return values, Dr. David Alan Gilbert (git), 2020/01/23
- [PULL 005/111] virtiofsd: Add passthrough_ll, Dr. David Alan Gilbert (git), 2020/01/23
- [PULL 013/111] virtiofsd: Trim out compatibility code, Dr. David Alan Gilbert (git), 2020/01/23
- [PULL 001/111] virtiofsd: Pull in upstream headers, Dr. David Alan Gilbert (git), 2020/01/23