Hi Thomas, I am really unable to see where is wrong leading to below warning complaints. Can you please help me check it? Add CC netdev maillist. Thanks, Ying -------- Forwarded Message -------- Subject: [rhashtable] WARNING: CPU: 0 PID: 10 at kernel/locking/mutex.c:570 mutex_lock_nested() Date: Sat, 10 Jan 2015 11:48:03 -0800 From: Fengguang Wu To: Ying Xue CC: LKP , linux-kernel(a)vger.kernel.org Greetings, 0day kernel testing robot got the below dmesg and the first bad commit is commit 54c5b7d311c8e1801f9dcce9f388a7420a25fa90 Author: Ying Xue AuthorDate: Wed Jan 7 13:41:53 2015 +0800 Commit: David S. Miller CommitDate: Thu Jan 8 19:47:10 2015 -0800 rhashtable: introduce rhashtable_wakeup_worker helper function Introduce rhashtable_wakeup_worker() helper function to reduce duplicated code where to wake up worker. By the way, as long as the both "future_tbl" and "tbl" bucket table pointers point to the same bucket array, we should try to wake up the resizing worker thread, otherwise, it indicates the work of resizing hash table is not finished yet. However, currently we will wake up the worker thread only when the two pointers point to different bucket array. Obviously this is wrong. So, the issue is also fixed as well in the patch. Signed-off-by: Ying Xue Cc: Thomas Graf Acked-by: Thomas Graf Signed-off-by: David S. Miller +--------------------------------------------------------+------------+------------+------------+ | | efb975a67e | 54c5b7d311 | 4955cb4b36 | +--------------------------------------------------------+------------+------------+------------+ | boot_successes | 66 | 0 | 0 | | boot_failures | 0 | 21 | 14 | | WARNING:at_kernel/locking/mutex.c:#mutex_lock_nested() | 0 | 21 | 14 | | BUG:unable_to_handle_kernel | 0 | 21 | 14 | | Oops | 0 | 21 | 14 | | EIP_is_at_misc_register | 0 | 21 | 14 | | Kernel_panic-not_syncing:Fatal_exception | 0 | 21 | 14 | | backtrace:rht_deferred_worker | 0 | 21 | 14 | +--------------------------------------------------------+------------+------------+------------+ [ 0.398875] ------------[ cut here ]------------ [ 0.398875] ------------[ cut here ]------------ [ 0.400000] WARNING: CPU: 0 PID: 10 at kernel/locking/mutex.c:570 mutex_lock_nested+0x389/0x444() [ 0.400000] WARNING: CPU: 0 PID: 10 at kernel/locking/mutex.c:570 mutex_lock_nested+0x389/0x444() [ 0.400000] DEBUG_LOCKS_WARN_ON(l->magic != l) [ 0.400000] DEBUG_LOCKS_WARN_ON(l->magic != l) [ 0.400000] Modules linked in: [ 0.400000] Modules linked in: [ 0.400000] CPU: 0 PID: 10 Comm: kworker/0:1 Not tainted 3.19.0-rc3-g54c5b7d #200 [ 0.400000] CPU: 0 PID: 10 Comm: kworker/0:1 Not tainted 3.19.0-rc3-g54c5b7d #200 [ 0.400000] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 [ 0.400000] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 [ 0.400000] Workqueue: events rht_deferred_worker [ 0.400000] Workqueue: events rht_deferred_worker [ 0.400000] 00000000 [ 0.400000] 00000000 d34ede5c d34ede5c d34a5460 d34a5460 d34ede30 d34ede30 c14458df c14458df d34ede4c d34ede4c c10424d3 c10424d3 0000023a 0000023a [ 0.400000] c144965c [ 0.400000] c144965c 00000001 00000001 d348bec8 d348bec8 d34a5460 d34a5460 d34ede64 d34ede64 c1042510 c1042510 00000009 00000009 d34ede5c d34ede5c [ 0.400000] c16cd111 [ 0.400000] c16cd111 d34ede78 d34ede78 d34edea0 d34edea0 c144965c c144965c c16d33fa c16d33fa 0000023a 0000023a c16cd111 c16cd111 c16d3422 c16d3422 [ 0.400000] Call Trace: [ 0.400000] Call Trace: [ 0.400000] [] dump_stack+0x16/0x18 [ 0.400000] [] dump_stack+0x16/0x18 [ 0.400000] [] warn_slowpath_common+0xac/0xc3 [ 0.400000] [] warn_slowpath_common+0xac/0xc3 [ 0.400000] [] ? mutex_lock_nested+0x389/0x444 [ 0.400000] [] ? mutex_lock_nested+0x389/0x444 [ 0.400000] [] warn_slowpath_fmt+0x26/0x2a [ 0.400000] [] warn_slowpath_fmt+0x26/0x2a [ 0.400000] [] mutex_lock_nested+0x389/0x444 [ 0.400000] [] mutex_lock_nested+0x389/0x444 [ 0.400000] [] rht_deferred_worker+0x19/0x74 [ 0.400000] [] rht_deferred_worker+0x19/0x74 [ 0.400000] [] process_one_work+0x3f7/0x74d [ 0.400000] [] process_one_work+0x3f7/0x74d [ 0.400000] [] ? worker_thread+0x30/0x75e [ 0.400000] [] ? worker_thread+0x30/0x75e [ 0.400000] [] worker_thread+0x59a/0x75e [ 0.400000] [] worker_thread+0x59a/0x75e [ 0.400000] [] ? max_active_store+0x57/0x57 [ 0.400000] [] ? max_active_store+0x57/0x57 [ 0.400000] [] kthread+0xe9/0xee [ 0.400000] [] kthread+0xe9/0xee [ 0.400000] [] ret_from_kernel_thread+0x20/0x30 [ 0.400000] [] ret_from_kernel_thread+0x20/0x30 [ 0.400000] [] ? kthread_create_on_node+0x1de/0x1de [ 0.400000] [] ? kthread_create_on_node+0x1de/0x1de [ 0.400000] ---[ end trace 250eb7ae843dd3cf ]--- [ 0.400000] ---[ end trace 250eb7ae843dd3cf ]--- git bisect start 4955cb4b36dc366298ecaac0d9874094c8ffe01a b1940cd21c0f4abdce101253e860feff547291b0 -- git bisect bad c526685710f25a83983b56a0a3d26ffee105f6e1 # 14:05 4- 16 Merge 'jtkirshe-net-next/i40e-queue' into devel-lkp-hsx01-rand-201501101335 git bisect good 445834073c81918ec10760d96c3d966fa452dc78 # 14:10 22+ 0 Merge 'microblaze/xnext/gpio-v5' into devel-lkp-hsx01-rand-201501101335 git bisect bad 7b14c9751ab7b4daa58fabd886ea4c55d9068416 # 14:14 0- 22 Merge 'jtkirshe-net-next/core-queue' into devel-lkp-hsx01-rand-201501101335 git bisect bad 818dc2047f993b67202d37d336736ddf8d291d83 # 14:17 0- 22 Merge 'jtkirshe-net-next/community' into devel-lkp-hsx01-rand-201501101335 git bisect good 44d84d7272e5848878a96029b8a8b6e86854f146 # 14:19 22+ 0 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net git bisect bad fb57720daf6e56ba453414b5e8dd9cb3c0c80257 # 14:19 0- 18 Merge tag 'batman-adv-for-davem' of git://git.open-mesh.org/linux-merge git bisect bad 99b164a66b7c80be69097d19e55dd1f6a5284fd6 # 14:19 0- 21 Revert "ARM: imx: add FEC sleep mode callback function" git bisect good efb975a67ea7846b966080f999589de570686aa0 # 14:21 22+ 0 rhashtable: optimize rhashtable_lookup routine git bisect bad c0c09bfdc4150b3918526660768585cd477adf35 # 14:21 0- 21 rhashtable: avoid unnecessary wakeup for worker queue git bisect bad db30485408326a6f466a843b291b23535f63eda0 # 16:53 0- 43 rhashtable: involve rhashtable_lookup_insert routine git bisect bad 54c5b7d311c8e1801f9dcce9f388a7420a25fa90 # 16:53 0- 21 rhashtable: introduce rhashtable_wakeup_worker helper function # first bad commit: [54c5b7d311c8e1801f9dcce9f388a7420a25fa90] rhashtable: introduce rhashtable_wakeup_worker helper function git bisect good efb975a67ea7846b966080f999589de570686aa0 # 16:54 66+ 0 rhashtable: optimize rhashtable_lookup routine # extra tests with DEBUG_INFO git bisect good 54c5b7d311c8e1801f9dcce9f388a7420a25fa90 # 17:53 66+ 61 rhashtable: introduce rhashtable_wakeup_worker helper function # extra tests on HEAD of linux-devel/devel-lkp-hsx01-rand-201501101335 git bisect bad 4955cb4b36dc366298ecaac0d9874094c8ffe01a # 17:53 0- 14 0day head guard for 'devel-lkp-hsx01-rand-201501101335' # extra tests on tree/branch linux-devel/devel-athens-alpha-201501091315 git bisect bad d8c38894432075482b15d047396412a2419c509b # 18:36 0- 63 0day head guard for 'devel-athens-alpha-201501091315' # extra tests on tree/branch linus/master git bisect good eb74926920cfa756087a82e0b081df837177cb95 # 18:38 66+ 0 Merge tag 'sound-3.19-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound # extra tests on tree/branch next/master git bisect good 39b673bba50275b516543d32ef78767a524b9f26 # 18:40 66+ 0 Add linux-next specific files for 20150109 This script may reproduce the error. ---------------------------------------------------------------------------- #!/bin/bash kernel=$1 kvm=( qemu-system-x86_64 -enable-kvm -cpu Haswell,+smep,+smap -kernel $kernel -m 320 -smp 1 -net nic,vlan=1,model=e1000 -net user,vlan=1 -boot order=nc -no-reboot -watchdog i6300esb -rtc base=localtime -serial stdio -display none -monitor null ) append=( hung_task_panic=1 earlyprintk=ttyS0,115200 debug apic=debug sysrq_always_enabled rcupdate.rcu_cpu_stall_timeout=100 panic=-1 softlockup_panic=1 nmi_watchdog=panic oops=panic load_ramdisk=2 prompt_ramdisk=0 console=ttyS0,115200 console=tty0 vga=normal root=/dev/ram0 rw drbd.minor_count=8 ) "${kvm[@]}" --append "${append[*]}" ---------------------------------------------------------------------------- Thanks, Fengguang