fanotify: support reporting non-decodeable file handles
authorAmir Goldstein <amir73il@gmail.com>
Tue, 2 May 2023 12:48:17 +0000 (15:48 +0300)
committerJan Kara <jack@suse.cz>
Thu, 25 May 2023 11:17:04 +0000 (13:17 +0200)
commita95aef69a740f5a1c7d70f2b58552207edaef99a
tree41a2bc1218bd252595d897f04d266d3f4a1ffd0d
parent96b2b072ee62be8ae68c8ecf14854c4d0505a8f8
fanotify: support reporting non-decodeable file handles

fanotify users do not always need to decode the file handles reported
with FAN_REPORT_FID.

Relax the restriction that filesystem needs to support NFS export and
allow reporting file handles from filesystems that only support ecoding
unique file handles.

Even filesystems that do not have export_operations at all can fallback
to use the default FILEID_INO32_GEN encoding, but we use the existence
of export_operations as an indication that the encoded file handles will
be sufficiently unique and that user will be able to compare them to
filesystem objects using AT_HANDLE_FID flag to name_to_handle_at(2).

For filesystems that do not support NFS export, users will have to use
the AT_HANDLE_FID of name_to_handle_at(2) if they want to compare the
object in path to the object fid reported in an event.

Signed-off-by: Amir Goldstein <amir73il@gmail.com>
Signed-off-by: Jan Kara <jack@suse.cz>
Message-Id: <20230502124817.3070545-5-amir73il@gmail.com>
fs/notify/fanotify/fanotify.c
fs/notify/fanotify/fanotify_user.c