diff options
author | Amir Goldstein <[email protected]> | 2021-03-22 19:39:44 +0200 |
---|---|---|
committer | Jan Kara <[email protected]> | 2021-04-19 16:03:48 +0200 |
commit | 59cda49ecf6c9a32fae4942420701b6e087204f6 (patch) | |
tree | 8a24983b9d5074a44a9ae419904de8b3dbb4f27e | |
parent | 9591c3a34f7722bd77f42c98d76fd5a5bad465f0 (diff) |
shmem: allow reporting fanotify events with file handles on tmpfs
Since kernel v5.1, fanotify_init(2) supports the flag FAN_REPORT_FID
for identifying objects using file handle and fsid in events.
fanotify_mark(2) fails with -ENODEV when trying to set a mark on
filesystems that report null f_fsid in stasfs(2).
Use the digest of uuid as f_fsid for tmpfs to uniquely identify tmpfs
objects as best as possible and allow setting an fanotify mark that
reports events with file handles on tmpfs.
Link: https://lore.kernel.org/r/[email protected]
Acked-by: Hugh Dickins <[email protected]>
Reviewed-by: Christian Brauner <[email protected]>
Signed-off-by: Amir Goldstein <[email protected]>
Signed-off-by: Jan Kara <[email protected]>
-rw-r--r-- | mm/shmem.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/mm/shmem.c b/mm/shmem.c index b2db4ed0fbc7..162d8f8993bb 100644 --- a/mm/shmem.c +++ b/mm/shmem.c @@ -2846,6 +2846,9 @@ static int shmem_statfs(struct dentry *dentry, struct kstatfs *buf) buf->f_ffree = sbinfo->free_inodes; } /* else leave those fields 0 like simple_statfs */ + + buf->f_fsid = uuid_to_fsid(dentry->d_sb->s_uuid.b); + return 0; } |