From 3c0b93c7e6813c1344644274c99aef335dbccc6a Mon Sep 17 00:00:00 2001 From: Andrey Konovalov Date: Fri, 16 Jun 2017 20:59:44 +0200 Subject: repro: better guilty file detection --- report/guilty.go | 3 +++ report/guilty_test.go | 45 +++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 48 insertions(+) diff --git a/report/guilty.go b/report/guilty.go index 5236f02c0..087d2f275 100644 --- a/report/guilty.go +++ b/report/guilty.go @@ -17,10 +17,13 @@ var ( regexp.MustCompile(`^mm/kasan/.*`), regexp.MustCompile(`^mm/kmsan/.*`), regexp.MustCompile(`^mm/percpu.*`), + regexp.MustCompile(`^mm/vmalloc.c`), + regexp.MustCompile(`^mm/page_alloc.c`), regexp.MustCompile(`^kernel/rcu/.*`), regexp.MustCompile(`^arch/.*/kernel/traps.c`), regexp.MustCompile(`^kernel/locking/*`), regexp.MustCompile(`^kernel/panic.c`), + regexp.MustCompile(`^kernel/softirq.c`), regexp.MustCompile(`^net/core/dev.c`), regexp.MustCompile(`^net/core/sock.c`), regexp.MustCompile(`^net/core/skbuff.c`), diff --git a/report/guilty_test.go b/report/guilty_test.go index 880a8ab44..2f4b9c244 100644 --- a/report/guilty_test.go +++ b/report/guilty_test.go @@ -657,6 +657,51 @@ Call Trace: ` driver/foo/lib/foo.c:10 `: `driver/foo/lib/foo.c`, + ` +BUG: soft lockup - CPU#1 stuck for 22s! [syz-executor2:7067] +hardirqs last enabled at (210421): [] restore_regs_and_iret+0x0/0x1d +hardirqs last disabled at (210422): [] apic_timer_interrupt+0x82/0x90 arch/x86/entry/entry_64.S:710 +softirqs last enabled at (210420): [] __do_softirq+0x613/0x8c4 kernel/softirq.c:344 +softirqs last disabled at (210415): [] invoke_softirq kernel/softirq.c:395 [inline] +softirqs last disabled at (210415): [] irq_exit+0x170/0x1a0 kernel/softirq.c:436 +RIP: 0010:[] [] next_group+0x5a/0x2e0 fs/pnode.c:172 +`: `fs/pnode.c`, + ` +------------[ cut here ]------------ +WARNING: CPU: 1 PID: 7733 at mm/vmalloc.c:1473 __vunmap+0x1ca/0x300 mm/vmalloc.c:1472() +Trying to vfree() bad address (ffff8800b3254fc0) +Kernel panic - not syncing: panic_on_warn set ... + +Call Trace: + [] __dump_stack lib/dump_stack.c:15 [inline] + [] dump_stack+0xc1/0x124 lib/dump_stack.c:51 + [] __panic+0x11f/0x30b kernel/panic.c:179 + [] panic_saved_regs+0xba/0xba kernel/panic.c:280 + [] warn_slowpath_common+0x12f/0x150 kernel/panic.c:642 + [] warn_slowpath_fmt+0xb0/0xe0 kernel/panic.c:658 + [] __vunmap+0x1ca/0x300 mm/vmalloc.c:1472 + [] vfree+0x55/0xe0 mm/vmalloc.c:1533 + [] ipc_free+0x44/0x50 ipc/util.c:420 + [] semctl_main+0x20d/0x1ba0 ipc/sem.c:1496 +`: `ipc/util.c`, + ` + +=============================== +[ INFO: suspicious RCU usage. ] +Call Trace: + [] __dump_stack lib/dump_stack.c:15 [inline] + [] dump_stack+0xc1/0x124 lib/dump_stack.c:51 + [] warn_alloc+0x208/0x230 mm/page_alloc.c:2850 + [] __vmalloc_area_node_memcg mm/vmalloc.c:1647 [inline] + [] __vmalloc_node_range_memcg+0x375/0x670 mm/vmalloc.c:1690 + [] __vmalloc_node_memcg mm/vmalloc.c:1751 [inline] + [] __vmalloc_node_memcg_flags mm/vmalloc.c:1788 [inline] + [] vmalloc+0x69/0x70 mm/vmalloc.c:1803 + [] xt_alloc_table_info+0xd0/0x100 net/netfilter/x_tables.c:952 + [] do_replace net/ipv4/netfilter/ip_tables.c:1140 [inline] + [] do_ipt_set_ctl+0x21c/0x430 net/ipv4/netfilter/ip_tables.c:1687 + [] nf_sockopt net/netfilter/nf_sockopt.c:105 [inline] +`: `net/netfilter/x_tables.c`, } for log, guilty0 := range tests { if guilty := ExtractGuiltyFile(log); guilty != guilty0 { -- cgit mrf-deployment