On Fri, Aug 17, 2018 at 03:39:22PM +0530, Mukesh Ojha wrote: > Hi Al Viro, > > Is there is reason we have kept data->found++, if the dentry already there > in shrink list ? > > static enum d_walk_ret select_collect( > ... > if (dentry->d_flags & DCACHE_SHRINK_LIST) { > data->found++; > } else { > .. > > If the dentry is already there on shrink list, does it not mean that > data->found is already non-zero ? Nope. It can be on *another* shrink list - if two processes are doing that... > Can't we just go out from here directly?