Re: 2.6.16-rc5-mm1

Peter Staubach
2006-03-01T20:45:59Z

Andrew Morton wrote:

>Maybe you're not running applications which install inotify watches. This
>is apparently triggerable by doing `touch foo;rm foo;touch foo' in a watched
>directory.
>
>Nick, isn't it simply a matter of..
>
>--- devel/fs/dcache.c~inotify-lock-avoidance-with-parent-watch-status-in-dentry-fix 2006-03-01 12:10:48.000000000 -0800
>+++ devel-akpm/fs/dcache.c 2006-03-01 12:11:33.000000000 -0800
>@@ -173,6 +173,7 @@ repeat:
> goto kill_it;
> if (list_empty(&dentry->d_lru)) {
> dentry->d_flags |= DCACHE_REFERENCED;
>+ dentry->d_flags &= DCACHE_INOTIFY_PARENT_WATCHED;
> list_add(&dentry->d_lru, &dentry_unused);
> dentry_stat.nr_unused++;
> }
>_
>
>-
>

This doesn;t look quite corect to me. First set DCACHE_REFERENCED in
the d_flags and then clear every bit in d_flags except
DCACHE_INOTIFY_PARENT_WATCHED? Should this be
"~DCACHE_INOTIFY_PARENT_WATCHED"?

Thanx...

ps