summaryrefslogtreecommitdiff
path: root/tools/perf/scripts/python/bin/task-analyzer-report
diff options
context:
space:
mode:
authorJeff Layton <jlayton@kernel.org>2026-06-16 07:58:48 -0400
committerChuck Lever <cel@kernel.org>2026-08-10 09:54:35 -0400
commit56240e6fe6ed5873c58567e3545c7aef1354f89a (patch)
treecb721e85995724d54ceb1e0d2f10af4ba2860d70 /tools/perf/scripts/python/bin/task-analyzer-report
parent45059e0e297bfa1904acdf1aeae9169c4eae032e (diff)
nfsd: update the fsnotify mark when setting or removing a dir delegation
Add a new helper function that will update the mask on the nfsd_file's fsnotify_mark to be a union of all current directory delegations on an inode. Call that when directory delegations are added or removed, since that can change what fsnotify events nfsd requires from the VFS layer. The fsnotify_mark is shared by every nfsd_file open on the inode, so concurrent delegation adds and removes on the same directory can run nfsd_fsnotify_recalc_mask() in parallel. Because it reads the lease state and updates the mark in two separate locked sections, a recalc working from a stale snapshot of the lease list could clobber a concurrent update and leave the mark missing required events. Add an nfm_recalc_mutex to the nfsd_file_mark and hold it across the recalc to serialize callers. Reviewed-by: Jan Kara <jack@suse.cz> Signed-off-by: Jeff Layton <jlayton@kernel.org> Link: https://patch.msgid.link/20260616-dir-deleg-v7-5-6cbc7eac0ade@kernel.org Signed-off-by: Chuck Lever <cel@kernel.org>
Diffstat (limited to 'tools/perf/scripts/python/bin/task-analyzer-report')
0 files changed, 0 insertions, 0 deletions