bisecting cause commit starting from 3dbdb38e286903ec220aaf1fb29a8d94297da246 building syzkaller on 8f5a7b8cde529e0a19a53f79bdf9c6cad306827b testing commit 3dbdb38e286903ec220aaf1fb29a8d94297da246 with gcc (GCC) 10.2.1 20210217 kernel signature: 0c918222f21b3682499f4b3d1f1264f91dcc6592d3670d266f17e60e95528b33 run #0: basic kernel testing failed: possible deadlock in fs_reclaim_acquire run #1: crashed: INFO: task hung in io_sq_thread_park run #2: crashed: INFO: task hung in io_sq_thread_park run #3: crashed: INFO: task hung in io_sq_thread_park run #4: crashed: INFO: task hung in io_sq_thread_park run #5: crashed: INFO: task hung in io_sq_thread_park run #6: crashed: INFO: task hung in io_sq_thread_park run #7: crashed: INFO: task hung in io_sq_thread_park run #8: crashed: INFO: task hung in io_sq_thread_park run #9: crashed: INFO: task hung in io_sq_thread_park run #10: crashed: INFO: task hung in io_sq_thread_park run #11: crashed: INFO: task hung in io_sq_thread_park run #12: crashed: INFO: task hung in io_sq_thread_park run #13: crashed: INFO: task hung in io_sq_thread_park run #14: crashed: INFO: task hung in io_sq_thread_park run #15: crashed: INFO: task hung in io_sq_thread_park run #16: OK run #17: OK run #18: crashed: INFO: task hung in io_sq_thread_park run #19: OK testing release v5.13 testing commit 62fb9874f5da54fdb243003b386128037319b219 with gcc (GCC) 10.2.1 20210217 kernel signature: 2da1b527de5368761b09a6f259401abd1c605ab1f94b71e4905ece00f8cea55a run #0: crashed: INFO: task hung in io_sq_thread_park run #1: crashed: INFO: task hung in io_sq_thread_park run #2: crashed: INFO: task hung in io_sq_thread_park run #3: crashed: INFO: task hung in io_sq_thread_park run #4: crashed: INFO: task hung in io_sq_thread_park run #5: crashed: INFO: task hung in io_sq_thread_park run #6: crashed: INFO: task hung in io_sq_thread_park run #7: crashed: INFO: task hung in io_sq_thread_park run #8: crashed: INFO: task hung in io_sq_thread_park run #9: OK testing release v5.12 testing commit 9f4ad9e425a1d3b6a34617b8ea226d56a119a717 with gcc (GCC) 10.2.1 20210217 kernel signature: 884266a5556d1a62a64c7c25251d8e0a746aa9b98e5402d4603e05f52c0f9c5e run #0: crashed: INFO: task hung in io_sq_thread_park run #1: crashed: INFO: task hung in io_sq_thread_park run #2: crashed: INFO: task hung in io_sq_thread_park run #3: crashed: INFO: task hung in io_sqpoll_cancel_sync run #4: crashed: INFO: task hung in io_sq_thread_park run #5: crashed: INFO: task hung in io_sq_thread_park run #6: crashed: INFO: task hung in io_sqpoll_cancel_sync run #7: crashed: INFO: task hung in io_sq_thread_park run #8: crashed: INFO: task hung in io_sqpoll_cancel_sync run #9: crashed: INFO: task hung in io_sq_thread_park testing release v5.11 testing commit f40ddce88593482919761f74910f42f4b84c004b with gcc (GCC) 10.2.1 20210217 kernel signature: faff4e02bf88b0acf1f16e5f1ab07886c83dcfac928ee4cf5de45ec3e13087b0 all runs: crashed: INFO: task hung in io_uring_cancel_task_requests testing release v5.10 testing commit 2c85ebc57b3e1817b6ce1a6b703928e113a90442 with gcc (GCC) 10.2.1 20210217 kernel signature: fff1832bb30f2fb014cf9b0fbe4a0d5a892d85cc8136d442973b7c49d798afd7 all runs: crashed: WARNING in percpu_ref_kill_and_confirm testing release v5.9 testing commit bbf5c979011a099af5dc76498918ed7df445635b with gcc (GCC) 10.2.1 20210217 kernel signature: 5785e9486a5e977919fe5ac69c504b6569270f36d9e66b520152cfc075cd365a all runs: OK # git bisect start 2c85ebc57b3e1817b6ce1a6b703928e113a90442 bbf5c979011a099af5dc76498918ed7df445635b Bisecting: 9594 revisions left to test after this (roughly 13 steps) [4d0e9df5e43dba52d38b251e3b909df8fa1110be] lib, uaccess: add failure injection to usercopy functions testing commit 4d0e9df5e43dba52d38b251e3b909df8fa1110be with gcc (GCC) 10.2.1 20210217 kernel signature: ce45539e924d41d29ec737ca7a2d193130ad39fe59c04e073742b6a112ca5ca8 all runs: crashed: BUG: using __this_cpu_read() in preemptible code in trace_hardirqs_on # git bisect bad 4d0e9df5e43dba52d38b251e3b909df8fa1110be Bisecting: 3935 revisions left to test after this (roughly 12 steps) [f888bdf9823c85fe945c4eb3ba353f749dec3856] Merge tag 'devicetree-for-5.10' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux testing commit f888bdf9823c85fe945c4eb3ba353f749dec3856 with gcc (GCC) 10.2.1 20210217 kernel signature: d8b6ef86b55efa57bbaa4da1e40cf295a95c2053ae1f6e70190dd6993052d699 all runs: crashed: BUG: using __this_cpu_read() in preemptible code in trace_hardirqs_on # git bisect bad f888bdf9823c85fe945c4eb3ba353f749dec3856 Bisecting: 1997 revisions left to test after this (roughly 11 steps) [57218d7f2e87069f73c7a841b6ed6c1cc7acf616] Merge tag 'regmap-v5.10' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap testing commit 57218d7f2e87069f73c7a841b6ed6c1cc7acf616 with gcc (GCC) 10.2.1 20210217 kernel signature: 873ddc2d5ec519ee19f146541eeac15e6a6b6666c791a9c3fc991aa116c25d59 all runs: crashed: BUG: using __this_cpu_read() in preemptible code in trace_hardirqs_on # git bisect bad 57218d7f2e87069f73c7a841b6ed6c1cc7acf616 Bisecting: 873 revisions left to test after this (roughly 10 steps) [39a5101f989e8d2be557136704d53990f9b402c8] Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 testing commit 39a5101f989e8d2be557136704d53990f9b402c8 with gcc (GCC) 10.2.1 20210217 kernel signature: ed50ba059119de465ef98ce365db249fd43f1f541332f42a77f181d5d0ba8ad2 all runs: crashed: BUG: using __this_cpu_read() in preemptible code in trace_hardirqs_on # git bisect bad 39a5101f989e8d2be557136704d53990f9b402c8 Bisecting: 521 revisions left to test after this (roughly 9 steps) [ed016af52ee3035b4799ebd7d53f9ae59d5782c4] Merge tag 'locking-core-2020-10-12' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip testing commit ed016af52ee3035b4799ebd7d53f9ae59d5782c4 with gcc (GCC) 10.2.1 20210217 kernel signature: c940b7daeb7b0767bebb577d52edcc35404a96229f191256ec59ca4153d3755c all runs: crashed: BUG: using __this_cpu_read() in preemptible code in trace_hardirqs_on # git bisect bad ed016af52ee3035b4799ebd7d53f9ae59d5782c4 Bisecting: 274 revisions left to test after this (roughly 8 steps) [f94ab231136c53ee26b1ddda76b29218018834ff] Merge tag 'x86_cleanups_for_v5.10' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip testing commit f94ab231136c53ee26b1ddda76b29218018834ff with gcc (GCC) 10.2.1 20210217 kernel signature: 3ba421bf08ff6003c5c72902c3f88c0861e13d94bd2a66676b573c6e1d3a8466 all runs: OK # git bisect good f94ab231136c53ee26b1ddda76b29218018834ff Bisecting: 125 revisions left to test after this (roughly 7 steps) [cc7343724eb77ce0752b1097a275f22f6fe47057] Merge tag 'x86-irq-2020-10-12' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip testing commit cc7343724eb77ce0752b1097a275f22f6fe47057 with gcc (GCC) 10.2.1 20210217 kernel signature: a92f3f6987f709bf85b7e29b4f4d8f268f93a16269cfc666549773cbb5759f9d all runs: OK # git bisect good cc7343724eb77ce0752b1097a275f22f6fe47057 Bisecting: 61 revisions left to test after this (roughly 6 steps) [d6c4c11348816fb4d16e33bf47d559d7aa59350a] Merge branch 'kcsan' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu into locking/core testing commit d6c4c11348816fb4d16e33bf47d559d7aa59350a with gcc (GCC) 8.4.1 20210217 kernel signature: 755397208c7453e18b87d7eb675b46f6a59da5d2be5abef75747a3beb09dd40a all runs: crashed: BUG: using __this_cpu_read() in preemptible code in trace_hardirqs_on # git bisect bad d6c4c11348816fb4d16e33bf47d559d7aa59350a Bisecting: 31 revisions left to test after this (roughly 5 steps) [6dd699b13d53f26a7603702d8bada3482312df74] seqlock: seqcount_LOCKNAME_t: Standardize naming convention testing commit 6dd699b13d53f26a7603702d8bada3482312df74 with gcc (GCC) 8.4.1 20210217 kernel signature: 0aabec23034a354cc0ffbc49b31875f739e337bae6e913a7e2a8bcd856b627bf all runs: OK # git bisect good 6dd699b13d53f26a7603702d8bada3482312df74 Bisecting: 15 revisions left to test after this (roughly 4 steps) [178a1877d782c034f466edd80e30a107af5469df] kcsan: Use pr_fmt for consistency testing commit 178a1877d782c034f466edd80e30a107af5469df with gcc (GCC) 8.4.1 20210217 kernel signature: eaa138c3c9b53194feaf08b76824a76d51f96d92d929f70f9ceb1f89eaa4cf17 all runs: OK # git bisect good 178a1877d782c034f466edd80e30a107af5469df Bisecting: 7 revisions left to test after this (roughly 3 steps) [d89d5f855f84ccf3f7e648813b4bb95c780bd7cd] locking/atomics: Check atomic-arch-fallback.h too testing commit d89d5f855f84ccf3f7e648813b4bb95c780bd7cd with gcc (GCC) 8.4.1 20210217 kernel signature: 1580efe8d644c291cd92402f2de3e1f03f770fb51777912452acd0806194b0d9 all runs: OK # git bisect good d89d5f855f84ccf3f7e648813b4bb95c780bd7cd Bisecting: 3 revisions left to test after this (roughly 2 steps) [e705d397965811ac528d7213b42d74ffe43caf38] Merge branch 'locking/urgent' into locking/core, to pick up fixes testing commit e705d397965811ac528d7213b42d74ffe43caf38 with gcc (GCC) 8.4.1 20210217 kernel signature: 5bd1252e2bb305290e2138c8d0c3bf2093f292ea9d8f10ded4e78b70929eb335 all runs: crashed: BUG: using __this_cpu_read() in preemptible code in trace_hardirqs_on # git bisect bad e705d397965811ac528d7213b42d74ffe43caf38 Bisecting: 1 revision left to test after this (roughly 1 step) [4d004099a668c41522242aa146a38cc4eb59cb1e] lockdep: Fix lockdep recursion testing commit 4d004099a668c41522242aa146a38cc4eb59cb1e with gcc (GCC) 8.4.1 20210217 kernel signature: e2eb38032b424ea2f34582d8c46f3bd7fd6797e39d645aba58b9606e8f60e727 all runs: crashed: BUG: using __this_cpu_read() in preemptible code in trace_hardirqs_on # git bisect bad 4d004099a668c41522242aa146a38cc4eb59cb1e Bisecting: 0 revisions left to test after this (roughly 0 steps) [2bb8945bcc1a768f2bc402a16c9610bba8d5187d] lockdep: Fix usage_traceoverflow testing commit 2bb8945bcc1a768f2bc402a16c9610bba8d5187d with gcc (GCC) 8.4.1 20210217 kernel signature: f9091b51a277e078045d9317555d851378fde2b1bd82edf17486683f504f2e34 all runs: OK # git bisect good 2bb8945bcc1a768f2bc402a16c9610bba8d5187d 4d004099a668c41522242aa146a38cc4eb59cb1e is the first bad commit commit 4d004099a668c41522242aa146a38cc4eb59cb1e Author: Peter Zijlstra Date: Fri Oct 2 11:04:21 2020 +0200 lockdep: Fix lockdep recursion Steve reported that lockdep_assert*irq*(), when nested inside lockdep itself, will trigger a false-positive. One example is the stack-trace code, as called from inside lockdep, triggering tracing, which in turn calls RCU, which then uses lockdep_assert_irqs_disabled(). Fixes: a21ee6055c30 ("lockdep: Change hardirq{s_enabled,_context} to per-cpu variables") Reported-by: Steven Rostedt Signed-off-by: Peter Zijlstra (Intel) Signed-off-by: Ingo Molnar include/linux/lockdep.h | 13 ++++--- kernel/locking/lockdep.c | 99 +++++++++++++++++++++++++++++------------------- 2 files changed, 67 insertions(+), 45 deletions(-) culprit signature: e2eb38032b424ea2f34582d8c46f3bd7fd6797e39d645aba58b9606e8f60e727 parent signature: f9091b51a277e078045d9317555d851378fde2b1bd82edf17486683f504f2e34 revisions tested: 20, total time: 4h21m50.855005809s (build: 2h15m42.190969868s, test: 2h2m51.868590219s) first bad commit: 4d004099a668c41522242aa146a38cc4eb59cb1e lockdep: Fix lockdep recursion recipients (to): ["linux-kernel@vger.kernel.org" "mingo@kernel.org" "mingo@redhat.com" "peterz@infradead.org" "peterz@infradead.org" "will@kernel.org"] recipients (cc): [] crash: BUG: using __this_cpu_read() in preemptible code in trace_hardirqs_on BUG: using __this_cpu_read() in preemptible [00000000] code: syz-executor.5/10123 caller is lockdep_hardirqs_on_prepare+0x61/0x410 kernel/locking/lockdep.c:3684 CPU: 0 PID: 10123 Comm: syz-executor.5 Not tainted 5.9.0-rc8-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Call Trace: __dump_stack lib/dump_stack.c:77 [inline] dump_stack+0x99/0xd0 lib/dump_stack.c:118 check_preemption_disabled+0xb4/0xc0 lib/smp_processor_id.c:48 lockdep_hardirqs_on_prepare+0x61/0x410 kernel/locking/lockdep.c:3684 trace_hardirqs_on+0x20/0x190 kernel/trace/trace_preemptirq.c:49 __bad_area_nosemaphore+0x84/0x430 arch/x86/mm/fault.c:797 handle_page_fault arch/x86/mm/fault.c:1429 [inline] exc_page_fault+0x5e/0xc0 arch/x86/mm/fault.c:1482 asm_exc_page_fault+0x1e/0x30 arch/x86/include/asm/idtentry.h:538 RIP: 0033:0x405823 Code: 00 00 00 00 00 66 90 48 89 7c 24 f0 48 89 74 24 e8 48 89 54 24 e0 48 89 4c 24 d8 48 8b 4c 24 f0 48 8b 74 24 e8 4c 8b 44 24 e0 <8b> 81 0c 01 00 00 44 8b 89 08 01 00 00 48 8b 54 24 d8 c1 e0 04 8d RSP: 002b:00007fe7a540a178 EFLAGS: 00010212 RAX: 0000000000405800 RBX: 000000000056c038 RCX: 0000000000000000 RDX: 0000000020000200 RSI: 0000000000000000 RDI: 0000000000000000 RBP: 00000000004bfcb9 R08: 0000000020000200 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000202 R12: 000000000056c038 R13: 00007ffc1d9398ef R14: 00007fe7a540a300 R15: 0000000000022000 BUG: using __this_cpu_read() in preemptible [00000000] code: syz-executor.5/10123 caller is lockdep_hardirqs_on+0x38/0x110 kernel/locking/lockdep.c:3753 CPU: 0 PID: 10123 Comm: syz-executor.5 Not tainted 5.9.0-rc8-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Call Trace: __dump_stack lib/dump_stack.c:77 [inline] dump_stack+0x99/0xd0 lib/dump_stack.c:118 check_preemption_disabled+0xb4/0xc0 lib/smp_processor_id.c:48 lockdep_hardirqs_on+0x38/0x110 kernel/locking/lockdep.c:3753 __bad_area_nosemaphore+0x84/0x430 arch/x86/mm/fault.c:797 handle_page_fault arch/x86/mm/fault.c:1429 [inline] exc_page_fault+0x5e/0xc0 arch/x86/mm/fault.c:1482 asm_exc_page_fault+0x1e/0x30 arch/x86/include/asm/idtentry.h:538 RIP: 0033:0x405823 Code: 00 00 00 00 00 66 90 48 89 7c 24 f0 48 89 74 24 e8 48 89 54 24 e0 48 89 4c 24 d8 48 8b 4c 24 f0 48 8b 74 24 e8 4c 8b 44 24 e0 <8b> 81 0c 01 00 00 44 8b 89 08 01 00 00 48 8b 54 24 d8 c1 e0 04 8d RSP: 002b:00007fe7a540a178 EFLAGS: 00010212 RAX: 0000000000405800 RBX: 000000000056c038 RCX: 0000000000000000 RDX: 0000000020000200 RSI: 0000000000000000 RDI: 0000000000000000 RBP: 00000000004bfcb9 R08: 0000000020000200 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000202 R12: 000000000056c038 R13: 00007ffc1d9398ef R14: 00007fe7a540a300 R15: 0000000000022000