Re: dcache: remove trylock loops (was Re: [BUG] lock_parent() breakage when used from shrink_dentry_list())

From: Al Viro
Date: Mon Mar 12 2018 - 20:38:01 EST


On Mon, Mar 12, 2018 at 06:52:31PM -0500, Eric W. Biederman wrote:

> Ah. I see now there is now the s_roots list that handles
> that bit of strangeness.
>
> So one path is to simply remove the heuristic from
> path_connected.
>
> Another path is to have nfsv2 and nfsv3 not set s_root at all.
> Leaving the heuristic working for the rest of the filesystems,
> and generally simplifying the code.
>
> Something like the diff below I should think.

> + /* Leave nfsv2 and nfsv3 s_root == NULL */

Now, grep fs/super.c for s_root. Or try to boot it, for that
matter...