diff options
| author | David Howells <dhowells@redhat.com> | 2026-03-18 18:38:58 +0300 |
|---|---|---|
| committer | Christian Brauner <brauner@kernel.org> | 2026-03-19 13:20:21 +0300 |
| commit | 7e57523490cd2efb52b1ea97f2e0a74c0fb634cd (patch) | |
| tree | 90a67a2d8bad17130ce2c6cf3d54b2b2c89fe867 /samples/workqueue | |
| parent | 8fb6857f2f5e35179ff35e7d25358b9add681b7e (diff) | |
| download | linux-7e57523490cd2efb52b1ea97f2e0a74c0fb634cd.tar.xz | |
netfs: Fix read abandonment during retry
Under certain circumstances, all the remaining subrequests from a read
request will get abandoned during retry. The abandonment process expects
the 'subreq' variable to be set to the place to start abandonment from, but
it doesn't always have a useful value (it will be uninitialised on the
first pass through the loop and it may point to a deleted subrequest on
later passes).
Fix the first jump to "abandon:" to set subreq to the start of the first
subrequest expected to need retry (which, in this abandonment case, turned
out unexpectedly to no longer have NEED_RETRY set).
Also clear the subreq pointer after discarding superfluous retryable
subrequests to cause an oops if we do try to access it.
Fixes: ee4cdf7ba857 ("netfs: Speed up buffered reading")
Signed-off-by: David Howells <dhowells@redhat.com>
Link: https://patch.msgid.link/3775287.1773848338@warthog.procyon.org.uk
Reviewed-by: Paulo Alcantara (Red Hat) <pc@manguebit.org>
cc: Paulo Alcantara <pc@manguebit.org>
cc: netfs@lists.linux.dev
cc: linux-fsdevel@vger.kernel.org
Signed-off-by: Christian Brauner <brauner@kernel.org>
Diffstat (limited to 'samples/workqueue')
0 files changed, 0 insertions, 0 deletions
