[viro-vfs:work.dcache2] [__dentry_kill()] 01b17d53ce: WARNING:possible_recursive_locking_detected

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




Hello,

kernel test robot noticed "WARNING:possible_recursive_locking_detected" on:

commit: 01b17d53ce197777be701269395edba2fe27069a ("__dentry_kill(): new locking scheme")
https://git.kernel.org/cgit/linux/kernel/git/viro/vfs.git work.dcache2

in testcase: trinity
version: trinity-i386-abe9de86-1_20230429
with following parameters:

	runtime: 300s
	group: group-00
	nr_groups: 5

test-description: Trinity is a linux system call fuzz tester.
test-url: http://codemonkey.org.uk/projects/trinity/


compiler: gcc-11
test machine: qemu-system-x86_64 -enable-kvm -cpu SandyBridge -smp 2 -m 16G

(please refer to attached dmesg/kmsg for entire log/backtrace)



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 <oliver.sang@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-lkp/202311131520.ff2c101e-oliver.sang@xxxxxxxxx


[   12.984549][   T32] WARNING: possible recursive locking detected
[   12.985224][   T32] 6.6.0-00022-g01b17d53ce19 #1 Tainted: G                T
[   12.985995][   T32] --------------------------------------------
[   12.986664][   T32] kworker/u6:1/32 is trying to acquire lock:
[ 12.987128][ T32] c140539c (&dentry->d_lock){+.+.}-{2:2}, at: __dentry_kill (fs/dcache.c:547 fs/dcache.c:616) 
[   12.987128][   T32]
[   12.987128][   T32] but task is already holding lock:
[ 12.987128][ T32] c1402084 (&dentry->d_lock){+.+.}-{2:2}, at: __dentry_kill (include/linux/spinlock.h:351 fs/dcache.c:615) 
[   12.987128][   T32]
[   12.987128][   T32] other info that might help us debug this:
[   12.987128][   T32]  Possible unsafe locking scenario:
[   12.987128][   T32]
[   12.987128][   T32]        CPU0
[   12.987128][   T32]        ----
[   12.987128][   T32]   lock(&dentry->d_lock);
[   12.987128][   T32]
[   12.987128][   T32]  *** DEADLOCK ***
[   12.987128][   T32]
[   12.987128][   T32]  May be due to missing lock nesting notation
[   12.987128][   T32]
[   12.987128][   T32] 3 locks held by kworker/u6:1/32:
[ 12.987128][ T32] #0: c12cb2b8 ((wq_completion)events_unbound){+.+.}-{0:0}, at: process_one_work (arch/x86/include/asm/atomic.h:28 include/linux/atomic/atomic-arch-fallback.h:490 include/linux/atomic/atomic-long.h:81 include/linux/atomic/atomic-instrumented.h:3196 kernel/workqueue.c:669 kernel/workqueue.c:696 kernel/workqueue.c:2600) 
[ 12.987128][ T32] #1: c1ac3f20 ((work_completion)(&entry->work)){+.+.}-{0:0}, at: process_one_work (arch/x86/include/asm/atomic.h:28 include/linux/atomic/atomic-arch-fallback.h:490 include/linux/atomic/atomic-long.h:81 include/linux/atomic/atomic-instrumented.h:3196 kernel/workqueue.c:669 kernel/workqueue.c:696 kernel/workqueue.c:2600) 
[ 12.987128][ T32] #2: c1402084 (&dentry->d_lock){+.+.}-{2:2}, at: __dentry_kill (include/linux/spinlock.h:351 fs/dcache.c:615) 
[   12.987128][   T32]
[   12.987128][   T32] stack backtrace:
[   12.987128][   T32] CPU: 1 PID: 32 Comm: kworker/u6:1 Tainted: G                T  6.6.0-00022-g01b17d53ce19 #1 330148d6df35f2d99e64624286ad750c7614ad4a
[   12.987128][   T32] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.16.2-debian-1.16.2-1 04/01/2014
[   12.987128][   T32] Workqueue: events_unbound async_run_entry_fn
[   12.987128][   T32] Call Trace:
[ 12.987128][ T32] dump_stack_lvl (lib/dump_stack.c:107) 
[ 12.987128][ T32] dump_stack (lib/dump_stack.c:114) 
[ 12.987128][ T32] print_deadlock_bug (kernel/locking/lockdep.c:3013) 
[ 12.987128][ T32] validate_chain (kernel/locking/lockdep.c:3858) 
[ 12.987128][ T32] __lock_acquire (kernel/locking/lockdep.c:5136) 
[ 12.987128][ T32] lock_acquire (kernel/locking/lockdep.c:467 kernel/locking/lockdep.c:5755) 
[ 12.987128][ T32] ? __dentry_kill (fs/dcache.c:547 fs/dcache.c:616) 
[ 12.987128][ T32] _raw_spin_lock (include/linux/spinlock_api_smp.h:134 kernel/locking/spinlock.c:154) 
[ 12.987128][ T32] ? __dentry_kill (fs/dcache.c:547 fs/dcache.c:616) 
[ 12.987128][ T32] __dentry_kill (fs/dcache.c:547 fs/dcache.c:616) 
[ 12.987128][ T32] dput (fs/dcache.c:1990) 
[ 12.987128][ T32] ? dput (fs/dcache.c:836) 
[ 12.987128][ T32] dput (fs/dcache.c:858) 
[ 12.987128][ T32] step_into (fs/namei.c:1556 fs/namei.c:1840) 
[ 12.987128][ T32] ? walk_component (fs/namei.c:2003) 
[ 12.987128][ T32] walk_component (fs/namei.c:2008) 
[ 12.987128][ T32] path_lookupat (fs/namei.c:2482) 
[ 12.987128][ T32] filename_lookup (fs/namei.c:2513) 
[ 12.987128][ T32] kern_path (fs/namei.c:2610) 
[ 12.987128][ T32] init_stat (fs/init.c:133) 
[ 12.987128][ T32] clean_path (init/initramfs.c:333) 
[ 12.987128][ T32] do_name (init/initramfs.c:366) 
[ 12.987128][ T32] unpack_to_rootfs (init/initramfs.c:451 init/initramfs.c:504) 
[ 12.987128][ T32] ? kvm_clock_get_cycles (arch/x86/include/asm/preempt.h:85 arch/x86/kernel/kvmclock.c:80 arch/x86/kernel/kvmclock.c:86) 
[ 12.987128][ T32] do_populate_rootfs (init/initramfs.c:693) 
[ 12.987128][ T32] ? process_one_work (arch/x86/include/asm/atomic.h:28 include/linux/atomic/atomic-arch-fallback.h:490 include/linux/atomic/atomic-long.h:81 include/linux/atomic/atomic-instrumented.h:3196 kernel/workqueue.c:669 kernel/workqueue.c:696 kernel/workqueue.c:2600) 
[ 12.987128][ T32] async_run_entry_fn (kernel/async.c:129 (discriminator 5)) 
[ 12.987128][ T32] process_one_work (arch/x86/include/asm/atomic.h:23 include/linux/atomic/atomic-arch-fallback.h:444 include/linux/jump_label.h:260 include/linux/jump_label.h:270 include/trace/events/workqueue.h:108 kernel/workqueue.c:2635) 
[ 12.987128][ T32] ? process_one_work (arch/x86/include/asm/atomic.h:28 include/linux/atomic/atomic-arch-fallback.h:490 include/linux/atomic/atomic-long.h:81 include/linux/atomic/atomic-instrumented.h:3196 kernel/workqueue.c:669 kernel/workqueue.c:696 kernel/workqueue.c:2600) 
[ 12.987128][ T32] worker_thread (kernel/workqueue.c:2697 kernel/workqueue.c:2784) 
[ 12.987128][ T32] ? rescuer_thread (kernel/workqueue.c:2730) 
[ 12.987128][ T32] kthread (kernel/kthread.c:388) 
[ 12.987128][ T32] ? rescuer_thread (kernel/workqueue.c:2730) 
[ 12.987128][ T32] ? kthread_complete_and_exit (kernel/kthread.c:341) 
[ 12.987128][ T32] ret_from_fork (arch/x86/kernel/process.c:153) 
[ 12.987128][ T32] ? kthread_complete_and_exit (kernel/kthread.c:341) 
[ 12.987128][ T32] ret_from_fork_asm (arch/x86/entry/entry_32.S:741) 
[ 12.987128][ T32] entry_INT80_32 (arch/x86/entry/entry_32.S:944) 
[   13.024050][   T32] Trying to unpack rootfs image as initramfs...
[   15.772392][   T32] Freeing initrd memory: 128724K
[   15.773782][    T1] RAPL PMU: API unit is 2^-32 Joules, 0 fixed counters, 10737418240 ms ovfl timer



The kernel config and materials to reproduce are available at:
https://download.01.org/0day-ci/archive/20231113/202311131520.ff2c101e-oliver.sang@xxxxxxxxx



-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki





[Index of Archives]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux FS]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux