aboutsummaryrefslogtreecommitdiffstats
path: root/tools/testing/selftests/netfilter/conntrack_vrf.sh
diff options
context:
space:
mode:
authorJ. Bruce Fields <bfields@redhat.com>2021-11-29 15:08:00 -0500
committerJ. Bruce Fields <bfields@redhat.com>2021-12-10 11:55:15 -0500
commit548ec0805c399c65ed66c6641be467f717833ab5 (patch)
treef8c3f64767ecff4aa77f22157f38465a9e333f26 /tools/testing/selftests/netfilter/conntrack_vrf.sh
parentnfsd: Fix nsfd startup race (again) (diff)
downloadlinux-dev-548ec0805c399c65ed66c6641be467f717833ab5.tar.xz
linux-dev-548ec0805c399c65ed66c6641be467f717833ab5.zip
nfsd: fix use-after-free due to delegation race
A delegation break could arrive as soon as we've called vfs_setlease. A delegation break runs a callback which immediately (in nfsd4_cb_recall_prepare) adds the delegation to del_recall_lru. If we then exit nfs4_set_delegation without hashing the delegation, it will be freed as soon as the callback is done with it, without ever being removed from del_recall_lru. Symptoms show up later as use-after-free or list corruption warnings, usually in the laundromat thread. I suspect aba2072f4523 "nfsd: grant read delegations to clients holding writes" made this bug easier to hit, but I looked as far back as v3.0 and it looks to me it already had the same problem. So I'm not sure where the bug was introduced; it may have been there from the beginning. Cc: stable@vger.kernel.org Signed-off-by: J. Bruce Fields <bfields@redhat.com>
Diffstat (limited to 'tools/testing/selftests/netfilter/conntrack_vrf.sh')
0 files changed, 0 insertions, 0 deletions