On Wed, Dec 06, 2023 at 08:29:37AM +0800, kernel test robot wrote: > tree: https://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs.git carved-up-__dentry_kill > head: 20f7d1936e8a2859fee51273c8ffadcca4304968 > commit: c73bce0494d44e0d26ec351106558e4408cf1cd9 [22/28] step 3: have __dentry_kill() return the parent > config: x86_64-rhel-8.3 (https://download.01.org/0day-ci/archive/20231206/202312060802.HxDqIoDc-lkp@xxxxxxxxx/config) > compiler: gcc-12 (Debian 12.2.0-14) 12.2.0 > reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231206/202312060802.HxDqIoDc-lkp@xxxxxxxxx/reproduce) > > If you fix the issue in a separate patch/commit (i.e. not just a new version of > the same patch/commit), kindly add following tags > | Reported-by: kernel test robot <lkp@xxxxxxxxx> > | Closes: https://lore.kernel.org/oe-kbuild-all/202312060802.HxDqIoDc-lkp@xxxxxxxxx/ > > Note: the viro-vfs/carved-up-__dentry_kill HEAD 20f7d1936e8a2859fee51273c8ffadcca4304968 builds fine. > It only hurts bisectability. Argh... carve-up fuckups... delta to fix that one up follows, the breakage actually disappears on the next step. Sorry about that... Updated branch force-pushed diff --git a/fs/dcache.c b/fs/dcache.c index b35d120193e0..fc8347b8ac98 100644 --- a/fs/dcache.c +++ b/fs/dcache.c @@ -1098,10 +1098,10 @@ EXPORT_SYMBOL(d_prune_aliases); static inline void shrink_kill(struct dentry *victim, struct list_head *list) { - struct dentry *parent = dentry->d_parent; - if (parent != victim && if (!--parent->d_lockref.count) + struct dentry *parent = victim->d_parent; + if (parent != victim && !--parent->d_lockref.count) to_shrink_list(parent, list); - parent = __dentry_kill(dentry); + parent = __dentry_kill(victim); if (parent) spin_unlock(&parent->d_lock); }