[PATCH] audit_tree: keep inode pinned

Richard Guy Briggs rgb at redhat.com
Wed Nov 5 16:58:33 UTC 2014


On 14/11/04, Miklos Szeredi wrote:
> From: Miklos Szeredi <mszeredi at 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 at suse.cz>
> Cc: stable at 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 at 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




More information about the Linux-audit mailing list