diff options
| author | Chuck Lever <cel@kernel.org> | 2026-09-01 09:53:29 -0400 |
|---|---|---|
| committer | Christian Brauner <brauner@kernel.org> | 2026-09-04 13:02:02 +0200 |
| commit | 24973c36a6ea34e149c733301940b65c49b2d5d3 (patch) | |
| tree | 9c05c8de63fc4ffdf8637b9f3feeb572a2d85006 /tools/lib/python/kdoc/python_version.py | |
| parent | 669bb5af15d41a21359d00a441490f87a88eb52a (diff) | |
| download | linux-next-24973c36a6ea34e149c733301940b65c49b2d5d3.tar.gz linux-next-24973c36a6ea34e149c733301940b65c49b2d5d3.zip | |
splice: emit a single fsnotify access event per NFSD READ
nfsd_finish_read() calls fsnotify_access() on both NFSD read paths,
because splice_direct_to_actor() does not emit the event itself. The
iterator path reaches nfsd_finish_read() from vfs_iocb_iter_read(),
which has already emitted one. A READ served without splice therefore
emits two access events.
NFSD does not use splice for the GSS integrity and privacy services, so
a READ on a sec=krb5i or sec=krb5p mount takes the iterator. An inotify
watch on that file sees the READ twice.
Reported-by: Ameer Hamza <ameer.hamza@truenas.com>
Closes: https://lore.kernel.org/linux-nfs/20260818225715.572140-1-ameer.hamza@truenas.com/
Suggested-by: Amir Goldstein <amir73il@gmail.com>
Reviewed-by: Amir Goldstein <amir73il@gmail.com>
Link: https://lore.kernel.org/linux-nfs/CAOQ4uxgUOqFv6pVmdT_+4DjA0KQoQDCzN2Xz=xm1FyumewHZXg@mail.gmail.com/
Signed-off-by: Chuck Lever <cel@kernel.org>
Link: https://patch.msgid.link/20260901135329.487666-1-cel@kernel.org
Reviewed-by: Jan Kara <jack@suse.cz>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Christian Brauner (Amutable) <brauner@kernel.org>
Diffstat (limited to 'tools/lib/python/kdoc/python_version.py')
0 files changed, 0 insertions, 0 deletions
