Re: Hang/soft lockup in d_invalidate with simultaneous calls

From: Khazhismel Kumykov
Date: Sat Jun 03 2017 - 02:47:41 EST


On Fri, Jun 2, 2017 at 11:20 PM, Al Viro <viro@xxxxxxxxxxxxxxxxxx> wrote:
> The thing is, unlike shrink_dcache_parent() we *can* bugger off as
> soon as we'd found no victims, nothing mounted and dentry itself
> is unhashed. We can't do anything in select_collect() (we would've
> broken shrink_dcache_parent() that way), but we can do unhashing
> in check_and_drop() in "really nothing to do" case and we can return
> from d_invalidate() after that. So how about this:
That does the trick.

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature