audit: do not set FS_EVENT_ON_CHILD in audit marks mask
authorAmir Goldstein <amir73il@gmail.com>
Wed, 22 Jul 2020 12:58:43 +0000 (15:58 +0300)
committerJan Kara <jack@suse.cz>
Mon, 27 Jul 2020 21:16:33 +0000 (23:16 +0200)
commit7dbe6080167860df0bf8627e55fd5154f366cc7a
treed1f584c869fbf1309d5bc759e66f4cb6cde549b7
parent957f7b472c6b6de4214bf5144b811ab83a9b9465
audit: do not set FS_EVENT_ON_CHILD in audit marks mask

The audit group marks mask does not contain any events possible on
a child so setting the flag FS_EVENT_ON_CHILD in the mask is counter
productive.

It may lead to the undesired outcome of setting the dentry flag
DCACHE_FSNOTIFY_PARENT_WATCHED on a directory inode even though it is
not watching children, because the audit mark contribute the flag
FS_EVENT_ON_CHILD to the inode's fsnotify_mask and another mark could
be contributing an event that is possible on child to the inode's mask.

Furthermore in the following patches we want to use FS_EVENT_ON_CHILD
for non-dir inodes for other purposes so stop using the flag.

Link: https://lore.kernel.org/r/20200722125849.17418-4-amir73il@gmail.com
Signed-off-by: Amir Goldstein <amir73il@gmail.com>
Signed-off-by: Jan Kara <jack@suse.cz>
kernel/audit_fsnotify.c
kernel/audit_watch.c