On 14/11/04, Miklos Szeredi wrote:
From: Miklos Szeredi <mszeredi(a)suse.cz>
Hi Miklos,
Audit rules disappear when an inode they watch is evicted from the
cache.
This is likely not what we want.
The guilty commit is "fsnotify: allow marks to not pin inodes in core",
which didn't take into account that audit_tree adds watches with a zero
mask.
Adding any mask should fix this.
Nice find! Do you have a quick reproducer to detect this?
Fixes: 90b1e7a57880 ("fsnotify: allow marks to not pin inodes in
core")
Signed-off-by: Miklos Szeredi <mszeredi(a)suse.cz>
Cc: stable(a)vger.kernel.org # 2.6.36+
---
kernel/audit_tree.c | 1 +
1 file changed, 1 insertion(+)
--- a/kernel/audit_tree.c
+++ b/kernel/audit_tree.c
@@ -154,6 +154,7 @@ static struct audit_chunk *alloc_chunk(i
chunk->owners[i].index = i;
}
fsnotify_init_mark(&chunk->mark, audit_tree_destroy_watch);
+ chunk->mark.mask = FS_IN_IGNORED;
return chunk;
}
- RGB
--
Richard Guy Briggs <rbriggs(a)redhat.com>
Senior Software Engineer, Kernel Security, AMER ENG Base Operating Systems, Red Hat
Remote, Ottawa, Canada
Voice: +1.647.777.2635, Internal: (81) 32635, Alt: +1.613.693.0684x3545