[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250213132006.GV1977892@ZenIV>
Date: Thu, 13 Feb 2025 13:20:06 +0000
From: Al Viro <viro@...iv.linux.org.uk>
To: Jinliang Zheng <alexjlzheng@...il.com>
Cc: brauner@...nel.org, jack@...e.cz, alexjlzheng@...cent.com,
linux-fsdevel@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] fs: remove useless d_unhashed() retry in
d_alloc_parallel()
On Thu, Feb 13, 2025 at 08:21:37PM +0800, Jinliang Zheng wrote:
> After commit 45f78b0a2743 ("fs/dcache: Move the wakeup from
> __d_lookup_done() to the caller."), we will only wake up
> d_wait_lookup() after adding dentry to dentry_hashtable.
Not true. d_lookup_done() might be called without having
*ever* hashed the sucker.
Just think for a moment - what, for example, should happen
if ->lookup() fails? Would you have d_alloc_parallel()
coming during that ->lookup() (while dentry is in in-lookup
hash) hang forever?
NAK.
Powered by blists - more mailing lists