Files
linux-stable-mirror/include/linux
Amir Goldstein 580eb8de84 fsnotify: generate FS_RENAME event with rich information
[ Upstream commit e54183fa70 ]

The dnotify FS_DN_RENAME event is used to request notification about
a move within the same parent directory and was always coupled with
the FS_MOVED_FROM event.

Rename the FS_DN_RENAME event flag to FS_RENAME, decouple it from
FS_MOVED_FROM and report it with the moved dentry instead of the moved
inode, so it has the information about both old and new parent and name.

Generate the FS_RENAME event regardless of same parent dir and apply
the "same parent" rule in the generic fsnotify_handle_event() helper
that is used to call backends with ->handle_inode_event() method
(i.e. dnotify).  The ->handle_inode_event() method is not rich enough to
report both old and new parent and name anyway.

The enriched event is reported to fanotify over the ->handle_event()
method with the old and new dir inode marks in marks array slots for
ITER_TYPE_INODE and a new iter type slot ITER_TYPE_INODE2.

The enriched event will be used for reporting old and new parent+name to
fanotify groups with FAN_RENAME events.

Link: https://lore.kernel.org/r/20211129201537.1932819-5-amir73il@gmail.com
Signed-off-by: Amir Goldstein <amir73il@gmail.com>
Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-06-21 14:53:27 +02:00
..
2024-01-25 14:37:54 -08:00
2024-02-23 08:41:51 +01:00
2022-10-26 13:25:35 +02:00
2023-12-20 15:44:30 +01:00
2024-06-21 14:53:19 +02:00
2024-06-21 14:53:19 +02:00
2023-10-25 11:54:20 +02:00
2022-10-26 13:25:42 +02:00
2023-03-17 08:45:07 +01:00
2023-03-17 08:45:07 +01:00
2023-01-04 11:39:16 +01:00
2023-11-20 11:06:46 +01:00
2023-06-21 15:45:38 +02:00
2024-04-13 12:58:31 +02:00
2024-01-25 14:37:40 -08:00
2024-02-23 08:42:11 +01:00
2023-11-28 16:54:53 +00:00
2023-10-25 11:54:13 +02:00
2023-10-25 11:54:13 +02:00
2023-05-17 11:48:09 +02:00
2024-02-23 08:41:51 +01:00