From: Ahmad Fatoum <a.fatoum@barebox.org>
To: barebox@lists.infradead.org
Subject: [PATCH 00/10] fs: add virtfs (Plan 9 ove Virt I/O)
Date: Fri, 6 Jun 2025 10:58:03 +0200 [thread overview]
Message-ID: <20250606085813.2183260-1-a.fatoum@barebox.org> (raw)
In preparation for adding usb9pfs support to barebox, this series adds
9PFS over Virt I/O, which is nifty for passing files to (and from, FS
is writable) barebox running in Qemu.
Ahmad Fatoum (10):
tftp: centralize 2 sec d_revalidate optimization to new netfs lib
Port Linux __cleanup() based guard infrastructure
lib: idr: implement Linux idr_alloc/_u32 API
lib: add iov_iter I/O vector iterator support
lib: add parser code for mount options
include: add definitions for UID/GID/DEV
net: add support for 9P protocol
fs: add new 9P2000.l (Plan 9) File system support
fs: 9p: enable 9P over Virt I/O transport in defconfigs
test: add support for --fs option in QEMU
Documentation/user/virtio.rst | 32 +-
Makefile | 3 -
arch/arm/configs/multi_v7_defconfig | 4 +
arch/arm/configs/multi_v8_defconfig | 4 +
arch/riscv/configs/rv64i_defconfig | 4 +
arch/riscv/configs/virt32_defconfig | 4 +
common/startup.c | 3 +
conftest.py | 15 +
drivers/firmware/arm_scmi/bus.c | 5 +-
drivers/firmware/arm_scmi/driver.c | 10 +-
fs/9p/Kconfig | 18 +
fs/9p/Makefile | 12 +
fs/9p/fid.c | 295 ++++
fs/9p/fid.h | 37 +
fs/9p/v9fs.c | 373 ++++++
fs/9p/v9fs.h | 183 +++
fs/9p/v9fs_vfs.h | 74 +
fs/9p/vfs_addr.c | 111 ++
fs/9p/vfs_dir.c | 172 +++
fs/9p/vfs_file.c | 67 +
fs/9p/vfs_inode.c | 279 ++++
fs/9p/vfs_inode_dotl.c | 579 ++++++++
fs/9p/vfs_super.c | 243 ++++
fs/Kconfig | 6 +
fs/Makefile | 2 +
fs/fs.c | 9 +
fs/netfs.c | 25 +
fs/tftp.c | 35 +-
include/linux/cleanup.h | 401 ++++++
include/linux/compiler-clang.h | 11 +
include/linux/compiler_types.h | 6 +
include/linux/completion.h | 3 +
include/linux/fs.h | 47 +
include/linux/gfp.h | 2 +
include/linux/idr.h | 8 +-
include/linux/kdev_t.h | 22 +
include/linux/limits.h | 1 +
include/linux/module.h | 1 +
include/linux/mutex.h | 8 +-
include/linux/netfs.h | 78 ++
include/linux/parser.h | 42 +
include/linux/spinlock.h | 17 +-
include/linux/stat.h | 4 +
include/linux/uidgid.h | 59 +
include/linux/uidgid_types.h | 15 +
include/linux/uio.h | 305 +++++
include/net/9p/9p.h | 559 ++++++++
include/net/9p/client.h | 297 ++++
include/net/9p/transport.h | 73 +
include/printf.h | 11 +
include/uapi/linux/uio.h | 23 +
include/uapi/linux/virtio_9p.h | 44 +
lib/Makefile | 2 +
lib/idr.c | 116 +-
lib/iov_iter.c | 245 ++++
lib/parser.c | 363 +++++
net/9p/Kconfig | 32 +
net/9p/Makefile | 11 +
net/9p/client.c | 1932 +++++++++++++++++++++++++++
net/9p/mod.c | 180 +++
net/9p/protocol.c | 802 +++++++++++
net/9p/protocol.h | 19 +
net/9p/trans_virtio.c | 426 ++++++
net/Kconfig | 2 +
net/Makefile | 1 +
test/self/idr.c | 5 +
66 files changed, 8715 insertions(+), 62 deletions(-)
create mode 100644 fs/9p/Kconfig
create mode 100644 fs/9p/Makefile
create mode 100644 fs/9p/fid.c
create mode 100644 fs/9p/fid.h
create mode 100644 fs/9p/v9fs.c
create mode 100644 fs/9p/v9fs.h
create mode 100644 fs/9p/v9fs_vfs.h
create mode 100644 fs/9p/vfs_addr.c
create mode 100644 fs/9p/vfs_dir.c
create mode 100644 fs/9p/vfs_file.c
create mode 100644 fs/9p/vfs_inode.c
create mode 100644 fs/9p/vfs_inode_dotl.c
create mode 100644 fs/9p/vfs_super.c
create mode 100644 fs/netfs.c
create mode 100644 include/linux/cleanup.h
create mode 100644 include/linux/kdev_t.h
create mode 100644 include/linux/netfs.h
create mode 100644 include/linux/parser.h
create mode 100644 include/linux/uidgid.h
create mode 100644 include/linux/uidgid_types.h
create mode 100644 include/linux/uio.h
create mode 100644 include/net/9p/9p.h
create mode 100644 include/net/9p/client.h
create mode 100644 include/net/9p/transport.h
create mode 100644 include/uapi/linux/uio.h
create mode 100644 include/uapi/linux/virtio_9p.h
create mode 100644 lib/iov_iter.c
create mode 100644 lib/parser.c
create mode 100644 net/9p/Kconfig
create mode 100644 net/9p/Makefile
create mode 100644 net/9p/client.c
create mode 100644 net/9p/mod.c
create mode 100644 net/9p/protocol.c
create mode 100644 net/9p/protocol.h
create mode 100644 net/9p/trans_virtio.c
--
2.39.5
next reply other threads:[~2025-06-06 8:59 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-06-06 8:58 Ahmad Fatoum [this message]
2025-06-06 8:58 ` [PATCH 01/10] tftp: centralize 2 sec d_revalidate optimization to new netfs lib Ahmad Fatoum
2025-06-06 8:58 ` [PATCH 02/10] Port Linux __cleanup() based guard infrastructure Ahmad Fatoum
2025-06-06 8:58 ` [PATCH 03/10] lib: idr: implement Linux idr_alloc/_u32 API Ahmad Fatoum
2025-06-06 8:58 ` [PATCH 04/10] lib: add iov_iter I/O vector iterator support Ahmad Fatoum
2025-06-06 8:58 ` [PATCH 05/10] lib: add parser code for mount options Ahmad Fatoum
2025-06-06 8:58 ` [PATCH 06/10] include: add definitions for UID/GID/DEV Ahmad Fatoum
2025-06-06 8:58 ` [PATCH 07/10] net: add support for 9P protocol Ahmad Fatoum
2025-06-06 8:58 ` [PATCH 08/10] fs: add new 9P2000.l (Plan 9) File system support Ahmad Fatoum
2025-06-06 8:58 ` [PATCH 09/10] fs: 9p: enable 9P over Virt I/O transport in defconfigs Ahmad Fatoum
2025-06-06 8:58 ` [PATCH 10/10] test: add support for --fs option in QEMU Ahmad Fatoum
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=20250606085813.2183260-1-a.fatoum@barebox.org \
--to=a.fatoum@barebox.org \
--cc=barebox@lists.infradead.org \
/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