linux/fs/netfs
David Howells 0e764b9d46
netfs: Fix the handling of stream->front by removing it
The netfs_io_stream::front member is meant to point to the subrequest
currently being collected on a stream, but it isn't actually used this way
by direct write (which mostly ignores it).  However, there's a tracepoint
which looks at it.  Further, stream->front is actually redundant with
stream->subrequests.next.

Fix the potential problem in the direct code by just removing the member
and using stream->subrequests.next instead, thereby also simplifying the
code.

Fixes: a0b4c7a491 ("netfs: Fix unbuffered/DIO writes to dispatch subrequests in strict sequence")
Reported-by: Paulo Alcantara <pc@manguebit.org>
Signed-off-by: David Howells <dhowells@redhat.com>
Link: https://patch.msgid.link/4158599.1774426817@warthog.procyon.org.uk
Reviewed-by: Paulo Alcantara (Red Hat) <pc@manguebit.org>
cc: netfs@lists.linux.dev
cc: linux-fsdevel@vger.kernel.org
Signed-off-by: Christian Brauner <brauner@kernel.org>
2026-03-26 15:18:45 +01:00
..
Kconfig netfs: clean up after renaming FSCACHE_DEBUG config 2024-08-12 22:03:26 +02:00
Makefile netfs: Add support for caching single monolithic objects such as AFS dirs 2024-12-20 22:34:06 +01:00
buffered_read.c netfs: Fix the handling of stream->front by removing it 2026-03-26 15:18:45 +01:00
buffered_write.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
direct_read.c netfs: Fix the handling of stream->front by removing it 2026-03-26 15:18:45 +01:00
direct_write.c netfs: Fix the handling of stream->front by removing it 2026-03-26 15:18:45 +01:00
fscache_cache.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
fscache_cookie.c netfs: Mark __nonstring lookup tables 2025-04-17 10:13:46 +02:00
fscache_internal.h netfs, fscache: Combine fscache with netfs 2023-12-24 15:08:46 +00:00
fscache_io.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
fscache_main.c fscache: delete fscache_cookie_lru_timer when fscache exits to avoid UAF 2024-09-01 10:30:25 +02:00
fscache_proc.c netfs: Fix proc/fs/fscache symlink to point to "netfs" not "../netfs" 2024-01-04 13:15:32 +00:00
fscache_stats.c netfs: Fix interaction between write-streaming and cachefiles culling 2024-01-05 15:42:25 +00:00
fscache_volume.c Convert 'alloc_flex' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
internal.h netfs: Fix unbuffered/DIO writes to dispatch subrequests in strict sequence 2026-02-26 14:44:32 +01:00
iterator.c netfs: Fix kernel BUG in netfs_limit_iter() for ITER_KVEC iterators 2026-03-09 10:17:00 +01:00
locking.c netfs: Downgrade i_rwsem for a buffered write 2024-10-17 15:33:42 +02:00
main.c netfs: Renumber the NETFS_RREQ_* flags to make traces easier to read 2025-07-01 22:37:14 +02:00
misc.c vfs-6.19-rc1.folio 2025-12-01 10:26:38 -08:00
objects.c vfs-6.18-rc1.workqueue 2025-09-29 10:27:17 -07:00
read_collect.c netfs: Fix the handling of stream->front by removing it 2026-03-26 15:18:45 +01:00
read_pgpriv2.c netfs: fix reference leak 2025-09-26 10:14:19 +02:00
read_retry.c netfs: Fix read abandonment during retry 2026-03-19 11:20:21 +01:00
read_single.c netfs: Fix the handling of stream->front by removing it 2026-03-26 15:18:45 +01:00
rolling_buffer.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
stats.c netfs: Add retry stat counters 2025-02-13 16:00:48 +01:00
write_collect.c netfs: Fix the handling of stream->front by removing it 2026-03-26 15:18:45 +01:00
write_issue.c netfs: Fix the handling of stream->front by removing it 2026-03-26 15:18:45 +01:00
write_retry.c netfs: avoid double increment of retry_count in subreq 2026-02-08 17:07:43 -06:00