summaryrefslogtreecommitdiffstats
path: root/kernel/audit_tree.c
diff options
context:
space:
mode:
authorMiklos Szeredi <mszeredi@suse.cz>2014-11-04 11:27:12 +0100
committerPaul Moore <pmoore@redhat.com>2014-11-11 14:20:22 -0500
commit799b601451b21ebe7af0e6e8f6e2ccd4683c5064 (patch)
tree407429e46a1b1c60fa55f20e3f1ec84658e48275 /kernel/audit_tree.c
parent897f1acbb6702ddaa953e8d8436eee3b12016c7e (diff)
downloadlinux-stable-799b601451b21ebe7af0e6e8f6e2ccd4683c5064.tar.gz
linux-stable-799b601451b21ebe7af0e6e8f6e2ccd4683c5064.tar.bz2
linux-stable-799b601451b21ebe7af0e6e8f6e2ccd4683c5064.zip
audit: keep inode pinned
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. Fixes: 90b1e7a57880 ("fsnotify: allow marks to not pin inodes in core") Signed-off-by: Miklos Szeredi <mszeredi@suse.cz> Cc: stable@vger.kernel.org # 2.6.36+ Signed-off-by: Paul Moore <pmoore@redhat.com>
Diffstat (limited to 'kernel/audit_tree.c')
-rw-r--r--kernel/audit_tree.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/kernel/audit_tree.c b/kernel/audit_tree.c
index e242e3a9864a..80f29e015570 100644
--- a/kernel/audit_tree.c
+++ b/kernel/audit_tree.c
@@ -154,6 +154,7 @@ static struct audit_chunk *alloc_chunk(int count)
chunk->owners[i].index = i;
}
fsnotify_init_mark(&chunk->mark, audit_tree_destroy_watch);
+ chunk->mark.mask = FS_IN_IGNORED;
return chunk;
}