From: David Howells <dhowells@redhat.com>
To: Christian Brauner <christian@brauner.io>
Cc: David Howells <dhowells@redhat.com>,
Paulo Alcantara <pc@manguebit.org>,
Matthew Wilcox <willy@infradead.org>,
Namjae Jeon <linkinjeon@kernel.org>,
Marc Dionne <marc.dionne@auristor.com>,
Stefan Metzmacher <metze@samba.org>,
Eric Van Hensbergen <ericvh@kernel.org>,
Dominique Martinet <asmadeus@codewreck.org>,
Ilya Dryomov <idryomov@gmail.com>,
netfs@lists.linux.dev, linux-afs@lists.infradead.org,
linux-cifs@vger.kernel.org, linux-nfs@vger.kernel.org,
ceph-devel@vger.kernel.org, v9fs@lists.linux.dev,
linux-erofs@lists.ozlabs.org, linux-fsdevel@vger.kernel.org,
linux-kernel@vger.kernel.org
Subject: [PATCH v13 0/8] netfs: Miscellaneous preparatory changes
Date: Wed, 9 Sep 2026 08:20:54 +0100 [thread overview]
Message-ID: <20260909072105.1663687-1-dhowells@redhat.com> (raw)
Hi Christian,
Could you pull these patches please for -next? This is the first of four
batches. This is based on your vfs.fixes as there are some prerequisite
patches there. This was split from v11 of a larger series[1].
This a collection of miscellaneous modifications to netfslib that I want to
make ahead of bigger changes, including:
(1) Convert "unsigned long long" to "uoff_t". This makes it a little more
obvious as to the meaning of the value. Also convert some "loff_t" to
"uoff_t" as most of the time it's used the value really should never
be negative.
(2) Remove the writethrough code as the locking is really tricky to get
right and it looks like it could deadlock with Ceph if snapshots are
used.
(3) Adjust some tracepoints, including adding the cache object ID to
certain tracepoinits.
(4) Make use of PG_private_2 opt-in. Use of PG_private_2 is deprecated
and the MM people would like their page bit back, so we need to stop
using it soon.
(5) Add some helper functions to handle the barriering needed for the
NETFS_RREQ_ALL_QUEUED flag.
(6) Set the subrequest type at allocation time so that the allocation
trace records the proposed type.
The patches can also be found here:
https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git/log/?h=netfs-next-1
Thanks,
David
Changes
=======
ver #13)
- Fixed some sashiko-raised issues:
- Fixed netfs_mark_copy_to_cache() to use netfs_using_pgpriv2() rather
than checking NETFS_RREQ_USE_PGPRIV2.
- Fixed netfs_all_subreqs_queued() to do smp_mb__after_atomic() after
setting the NETFS_RREQ_ALL_QUEUED bit.
- Fixed netfs_single_dispatch_read() to not immediately contradict its
own initialisation of subreq->source.
ver #12)
- Split from v11 of "netfs: Keep track of folios in a segmented bio_vec[]
chain"[1]
[1] https://lore.kernel.org/r/20260902173350.3468672-1-dhowells@redhat.com/
[2] https://sashiko.dev/#/patchset/20260908091031.1506798-1-dhowells%40redhat.com
David Howells (8):
netfs: Use uoff_t instead of unsigned long long and loff_t
netfs: Remove the writethrough code
netfs: trace: Change the "clear" folio traces to "endwb"
netfs: trace: Rejig a couple of the tracepoints
netfs: Add the cache object ID to netfs_read/write tracepoints
netfs: Make deprecated PG_private_2 support opt-in
netfs: Add some functions to wrap the all-queued handling
netfs: Set subrequest->source at alloc before trace emission
fs/9p/vfs_addr.c | 1 -
fs/afs/file.c | 5 +-
fs/cachefiles/interface.c | 10 +--
fs/cachefiles/internal.h | 4 +-
fs/cachefiles/io.c | 25 +++---
fs/ceph/Kconfig | 1 +
fs/ceph/addr.c | 4 +-
fs/netfs/Kconfig | 3 +
fs/netfs/Makefile | 2 +-
fs/netfs/buffered_read.c | 37 ++++-----
fs/netfs/buffered_write.c | 66 +++------------
fs/netfs/direct_read.c | 14 ++--
fs/netfs/direct_write.c | 8 +-
fs/netfs/fscache_cookie.c | 8 +-
fs/netfs/fscache_io.c | 10 +--
fs/netfs/internal.h | 68 ++++++++++++---
fs/netfs/iterator.c | 2 +-
fs/netfs/main.c | 1 -
fs/netfs/misc.c | 10 +--
fs/netfs/objects.c | 6 +-
fs/netfs/read_collect.c | 14 ++--
fs/netfs/read_pgpriv2.c | 13 ++-
fs/netfs/read_retry.c | 5 +-
fs/netfs/read_single.c | 12 +--
fs/netfs/stats.c | 4 +-
fs/netfs/write_collect.c | 25 +++---
fs/netfs/write_issue.c | 123 ++-------------------------
fs/netfs/write_retry.c | 5 +-
fs/nfs/Kconfig | 1 +
include/linux/fscache-cache.h | 2 +-
include/linux/fscache.h | 36 ++++----
include/linux/netfs.h | 80 +++++++++---------
include/trace/events/cachefiles.h | 30 +++----
include/trace/events/fscache.h | 10 +--
include/trace/events/netfs.h | 134 +++++++++++++++---------------
35 files changed, 326 insertions(+), 453 deletions(-)
next reply other threads:[~2026-09-09 7:21 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-09 7:20 David Howells [this message]
2026-09-09 7:20 ` [PATCH v13 1/8] netfs: Use uoff_t instead of unsigned long long and loff_t David Howells
2026-09-09 7:20 ` [PATCH v13 2/8] netfs: Remove the writethrough code David Howells
2026-09-09 7:20 ` [PATCH v13 3/8] netfs: trace: Change the "clear" folio traces to "endwb" David Howells
2026-09-09 7:20 ` [PATCH v13 4/8] netfs: trace: Rejig a couple of the tracepoints David Howells
2026-09-09 7:20 ` [PATCH v13 5/8] netfs: Add the cache object ID to netfs_read/write tracepoints David Howells
2026-09-09 7:21 ` [PATCH v13 6/8] netfs: Make deprecated PG_private_2 support opt-in David Howells
2026-09-09 7:21 ` [PATCH v13 7/8] netfs: Add some functions to wrap the all-queued handling David Howells
2026-09-09 7:21 ` [PATCH v13 8/8] netfs: Set subrequest->source at alloc before trace emission David Howells
2026-09-09 21:02 ` Paulo Alcantara
2026-09-10 8:11 ` [PATCH v13 0/8] netfs: Miscellaneous preparatory changes Christian Brauner
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=20260909072105.1663687-1-dhowells@redhat.com \
--to=dhowells@redhat.com \
--cc=asmadeus@codewreck.org \
--cc=ceph-devel@vger.kernel.org \
--cc=christian@brauner.io \
--cc=ericvh@kernel.org \
--cc=idryomov@gmail.com \
--cc=linkinjeon@kernel.org \
--cc=linux-afs@lists.infradead.org \
--cc=linux-cifs@vger.kernel.org \
--cc=linux-erofs@lists.ozlabs.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-nfs@vger.kernel.org \
--cc=marc.dionne@auristor.com \
--cc=metze@samba.org \
--cc=netfs@lists.linux.dev \
--cc=pc@manguebit.org \
--cc=v9fs@lists.linux.dev \
--cc=willy@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