aboutsummaryrefslogtreecommitdiffstats
path: root/pkg
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2020-12-31 07:24:12 +0100
committerDmitry Vyukov <dvyukov@google.com>2020-12-31 11:23:51 +0100
commit10833a387680835e4d27e3b99d1270d3d037f7c3 (patch)
treef642dc78aa35a6ddfec2e094919de4523c8811cb /pkg
parent5cc121d679e3f161f29503eeba9288431b6d644d (diff)
pkg/report: improve arm oops parsing
Stop treating stack memory dump as beginning of stack trace. It's not getting anywhere, we are just getting more and more special cases (see test 555).
Diffstat (limited to 'pkg')
-rw-r--r--pkg/report/linux.go15
-rw-r--r--pkg/report/testdata/linux/report/2411
-rw-r--r--pkg/report/testdata/linux/report/2431
-rw-r--r--pkg/report/testdata/linux/report/54894
-rw-r--r--pkg/report/testdata/linux/report/5511
-rw-r--r--pkg/report/testdata/linux/report/5521
-rw-r--r--pkg/report/testdata/linux/report/55527
-rw-r--r--pkg/report/testdata/linux/report/55665
8 files changed, 124 insertions, 81 deletions
diff --git a/pkg/report/linux.go b/pkg/report/linux.go
index 05929a293..dda9e81cd 100644
--- a/pkg/report/linux.go
+++ b/pkg/report/linux.go
@@ -535,21 +535,11 @@ func (ctx *linux) isCorrupted(title string, report []byte, format oopsFormat) (b
if len(frames) < 4 {
return true, "call trace is missed"
}
- numLines := 15
corrupted := true
- if bytes.Contains(frames[0], []byte("Stack:")) {
- // Arm stacks contain 22 lines of memory dump before actual frames (see report 241).
- numLines += 22
- // More arm quirks: there are reports where "Stack:" denotes beginning of a stack,
- // so we need to check them, but there are also reports where "Stack:" section is empty
- // and it's immediately followed by "Backtrace:" which contains the real stack,
- // so we can't mark the report as corrupted if "Stack:" is empty.
- corrupted = false
- }
frames = frames[1:]
// Check that at least one of the next few lines contains a frame.
outer:
- for i := 0; i < numLines && i < len(frames); i++ {
+ for i := 0; i < 15 && i < len(frames); i++ {
for _, key1 := range linuxStackParams.stackStartRes {
// Next stack trace starts.
if key1.Match(frames[i]) {
@@ -720,7 +710,7 @@ var linuxStallAnchorFrames = []*regexp.Regexp{
var (
linuxSymbolizeRe = regexp.MustCompile(`(?:\[\<(?:(?:0x)?[0-9a-f]+)\>\])?[ \t]+\(?(?:[0-9]+:)?([a-zA-Z0-9_.]+)\+0x([0-9a-f]+)/0x([0-9a-f]+)\)?`)
linuxRipFrame = compile(`(?:IP|NIP|pc |PC is at):? (?:(?:[0-9]+:)?(?:{{PC}} +){0,2}{{FUNC}}|[0-9]+:0x[0-9a-f]+|(?:[0-9]+:)?{{PC}} +\[< *\(null\)>\] +\(null\)|[0-9]+: +\(null\))`)
- linuxCallTrace = compile(`(?:Call (?:T|t)race:)|(?:Stack: \(.* to .*\))|(?:Backtrace:)`)
+ linuxCallTrace = compile(`(?:Call (?:T|t)race:)|(?:Backtrace:)`)
)
var linuxCorruptedTitles = []*regexp.Regexp{
@@ -738,7 +728,6 @@ var linuxStackParams = &stackParams{
// Match 'backtrace:', but exclude 'stack backtrace:'
regexp.MustCompile(`[^k] backtrace:`),
regexp.MustCompile(`Backtrace:`),
- regexp.MustCompile(`Stack: \(.* to .*\)`), // arm is all unique
},
frameRes: []*regexp.Regexp{
compile("^ *(?:{{PC}} ){0,2}{{FUNC}}"),
diff --git a/pkg/report/testdata/linux/report/241 b/pkg/report/testdata/linux/report/241
index 93a86635c..1fc901e05 100644
--- a/pkg/report/testdata/linux/report/241
+++ b/pkg/report/testdata/linux/report/241
@@ -40,6 +40,7 @@ df80: 977bc000 00000000 000002e3 8027e954 00000000 00000000 00000000 00000036
dfa0: 801011e4 80101000 00000000 00000000 00000015 00005406 20000040 00000000
dfc0: 00000000 00000000 00000000 00000036 75fa97e4 00061b14 000005c6 000002e3
dfe0: 75fa8b10 75fa8b00 00013291 000358c2 600d0030 00000015 00000000 00000000
+Backtrace:
[<80b10c70>] (memset) from [<8062eec8>] (n_tty_set_termios+0x154/0x3c4)
[<8062eec8>] (n_tty_set_termios) from [<80632588>] (tty_set_termios+0x1bc/0x230)
[<80632588>] (tty_set_termios) from [<80632c94>] (set_termios+0x198/0x3f8)
diff --git a/pkg/report/testdata/linux/report/243 b/pkg/report/testdata/linux/report/243
index 44f0aa5d2..5566bd8fe 100644
--- a/pkg/report/testdata/linux/report/243
+++ b/pkg/report/testdata/linux/report/243
@@ -36,6 +36,7 @@ Stack: (0x97f07e00 to 0x97f08000)
7fa0: 00000000 80101000 00000018 00000001 000b0118 00000001 7e964e40 00000000
7fc0: 00000018 00000001 00000005 000000f0 000b0100 000b0010 000b011c 00000573
7fe0: 7e964d30 7e964d20 00014039 000358c2 20000030 000b0118 00000000 00000000
+Backtrace:
[<8015df40>] (migrate_task_rq_fair) from [<801559ec>] (set_task_cpu+0x4c/0xf8)
[<801559ec>] (set_task_cpu) from [<80155eb8>] (try_to_wake_up+0x164/0x3a4)
[<80155eb8>] (try_to_wake_up) from [<8015616c>] (wake_up_q+0x58/0x98)
diff --git a/pkg/report/testdata/linux/report/548 b/pkg/report/testdata/linux/report/548
index 55b4cfda3..0b49a242d 100644
--- a/pkg/report/testdata/linux/report/548
+++ b/pkg/report/testdata/linux/report/548
@@ -1,69 +1,27 @@
-TITLE: Unhandled fault in jffs2_parse_param
+TITLE: Unhandled fault in trace_hardirqs_off
-8<--- cut here ---
-Unhandled fault: page domain fault (0x01b) at 0x00000008
-pgd = 4c5c9ce0
-[00000008] *pgd=9671f835, *pte=00000000, *ppte=00000000
-Internal error: : 1b [#1] SMP ARM
-Dumping ftrace buffer:
- (ftrace buffer empty)
-Modules linked in:
-CPU: 0 PID: 24993 Comm: syz-executor.0 Not tainted 5.10.2 #10
-Hardware name: ARM-Versatile Express
-PC is at jffs2_parse_param+0xa8/0x18c
-LR is at jffs2_parse_param+0x98/0x18c
-pc : [<8054b7c0>] lr : [<8054b7b0>] psr: 40000013
-sp : 94771e60 ip : 00000002 fp : 00000000
-r10: 9675f000 r9 : 00000000 r8 : 00000000
-r7 : 9258f200 r6 : 0002b400 r5 : 9676fb80 r4 : 00000001
-r3 : 00000000 r2 : 00040000 r1 : cb584000 r0 : 00000005
-Flags: nZcv IRQs on FIQs on Mode SVC_32 ISA ARM Segment none
-Control: 10c5387d Table: 95fd006a DAC: 00000051
-Process syz-executor.0 (pid: 24993, stack limit = 0x9c3a9348)
-Stack: (0x94771e60 to 0x94772000)
-1e60: 00000000 00000000 00000000 00000000 000000ad 00000000 00000000 81104e88
-1e80: 00000014 8054b718 9676fb80 94771ec0 00000000 00000000 00000014 8037e608
-1ea0: 967f4280 802b75bc 9675f008 9675f008 00000014 9675f000 9676fb80 8037e7dc
-1ec0: 9675f000 00000002 967f4280 00000014 00000000 81104e88 00000072 9675f000
-1ee0: 9675f008 80e65d98 9676fb80 8037e8e0 9675f01d 81104e88 00800000 9676fb80
-1f00: 00000020 00000000 967f4740 811521c0 00800000 80360ff0 94771f74 8033ee34
-1f20: ffffff9c 00000000 00000000 81104e88 00000051 00000000 00000000 75e869c0
-1f40: 00000051 967f4740 00000000 00000015 9675f000 80361cc8 9675f000 8010cb7c
-1f60: 9197f748 00000000 20000000 00800000 94770000 822f19d0 82d8b198 81104e88
-1f80: 00800000 75e869c0 20000000 00000000 00000015 80100284 94770000 00000015
-1fa0: 20000040 80100260 75e869c0 20000000 00000000 20000000 200009c0 00800000
-1fc0: 75e869c0 20000000 00000000 00000015 200009c0 00000000 75e86980 20000040
-1fe0: 00000001 75e86938 00015750 0004ffc0 20000010 00000000 00000000 00000000
-[<8054b7c0>] (jffs2_parse_param) from [<8037e608>] (vfs_parse_fs_param+0xf8/0x23c)
-[<8037e608>] (vfs_parse_fs_param) from [<8037e7dc>] (vfs_parse_fs_string+0x90/0xd4)
-[<8037e7dc>] (vfs_parse_fs_string) from [<8037e8e0>] (generic_parse_monolithic+0xc0/0x114)
-[<8037e8e0>] (generic_parse_monolithic) from [<80360ff0>] (path_mount+0xb10/0x10c0)
-[<80360ff0>] (path_mount) from [<80361cc8>] (sys_mount+0x21c/0x36c)
-[<80361cc8>] (sys_mount) from [<80100260>] (__sys_trace_return+0x0/0x20)
-Exception stack(0x94771fa8 to 0x94771ff0)
-1fa0: 75e869c0 20000000 00000000 20000000 200009c0 00800000
-1fc0: 75e869c0 20000000 00000000 00000015 200009c0 00000000 75e86980 20000040
-1fe0: 00000001 75e86938 00015750 0004ffc0
-Code: e5973000 e2169602 13e09000 e1a06506 (e5934008)
----[ end trace 1e8bf21d99144682 ]---
-Kernel panic - not syncing: Fatal exception
-CPU1: stopping
-CPU: 1 PID: 0 Comm: swapper/1 Tainted: G D 5.10.2 #10
-Hardware name: ARM-Versatile Express
-[<80118054>] (unwind_backtrace) from [<80110ce4>] (show_stack+0x20/0x24)
-[<80110ce4>] (show_stack) from [<80c16564>] (dump_stack+0x104/0x138)
-[<80c16564>] (dump_stack) from [<80115548>] (do_handle_IPI+0x3e8/0x45c)
-[<80115548>] (do_handle_IPI) from [<801155d8>] (ipi_handler+0x1c/0x28)
-[<801155d8>] (ipi_handler) from [<801aec5c>] (handle_percpu_devid_fasteoi_ipi+0x84/0x1a8)
-[<801aec5c>] (handle_percpu_devid_fasteoi_ipi) from [<801a59ec>] (__handle_domain_irq+0xb8/0x124)
-[<801a59ec>] (__handle_domain_irq) from [<806ab444>] (gic_handle_irq+0xb0/0xe8)
-[<806ab444>] (gic_handle_irq) from [<80100b6c>] (__irq_svc+0x6c/0x90)
-Exception stack(0x814fff60 to 0x814fffa8)
-ff60: 0048140c 00000000 814dc4c0 00000000 00000000 814fe000 00000000 00000001
-ff80: 81104ed4 81104f10 81067b90 814fffc0 00000000 814fffb0 8010c030 8010c034
-ffa0: 80000013 ffffffff
-[<80100b6c>] (__irq_svc) from [<8010c034>] (arch_cpu_idle+0x28/0x48)
-[<8010c034>] (arch_cpu_idle) from [<80c23ac4>] (default_idle_call+0x28/0xf0)
-[<80c23ac4>] (default_idle_call) from [<80181b30>] (do_idle+0x1cc/0x26c)
-[<80181b30>] (do_idle) from [<80181e88>] (cpu_startup_entry+0x18/0x1c)
-[<80181e88>] (cpu_startup_entry) from [<8010164c>] (__enable_mmu+0x0/0x14)
+[ 9080.453689][T11783] 8<--- cut here ---
+[ 9080.454760][T11783] Unhandled fault: page domain fault (0x01b) at 0x00000e30
+[ 9080.455761][T11783] pgd = e852c1e3
+[ 9080.456588][T11783] [00000e30] *pgd=e8c3e835
+[ 9080.459344][T11783] Internal error: : 1b [#1] PREEMPT SMP ARM
+[ 9080.461027][T11783] Dumping ftrace buffer:
+[ 9080.462253][T11783] (ftrace buffer empty)
+[ 9080.463160][T11783] Modules linked in:
+[ 9080.464375][T11783] CPU: 1 PID: 11783 Comm: syz-executor.0 Not tainted 5.10.0-rc1+ #18
+[ 9080.465313][T11783] Hardware name: ARM-Versatile Express
+[ 9080.467190][T11783] PC is at __sanitizer_cov_trace_pc+0x4c/0x78
+[ 9080.468129][T11783] LR is at trace_hardirqs_off+0x6c/0x120
+[ 9080.468826][T11783] pc : [<802b4048>] lr : [<802e1324>] psr: 60000193
+[ 9080.469644][T11783] sp : 8bdfc010 ip : 8bdfc020 fp : 8bdfc01c
+[ 9080.470461][T11783] r10: 8591b080 r9 : 8bdfc000 r8 : 00000001
+[ 9080.471172][T11783] r7 : 80100a74 r6 : 844fbc1c r5 : 60000193 r4 : 8bdfc000
+[ 9080.471940][T11783] r3 : 8bdfc000 r2 : 00000000 r1 : 00000000 r0 : 00000000
+[ 9080.472938][T11783] Flags: nZCv IRQs off FIQs on Mode SVC_32 ISA ARM Segment none
+[ 9080.474920][T11783] Control: 10c5387d Table: 8a14806a DAC: 00000051
+[ 9080.475742][T11783] Process syz-executor.0 (pid: 11783, stack limit = 0xdf960dff)
+[ 9080.476792][T11783] Stack: (0x8bdfc010 to 0x00002000)
+[ 9080.477621][T11783] Backtrace:
+[ 9080.479068][T11783] [<802b3ffc>] (__sanitizer_cov_trace_pc) from [<802e1324>] (trace_hardirqs_off+0x6c/0x120)
+[ 9080.480508][T11783] [<802e12b8>] (trace_hardirqs_off) from [<80100a74>] (__dabt_svc+0x54/0xa0)
+[ 9080.481456][T11783] Exception stack(0x8bdfc048 to 0x8bdfc090)
diff --git a/pkg/report/testdata/linux/report/551 b/pkg/report/testdata/linux/report/551
index 55b4cfda3..4f06665d6 100644
--- a/pkg/report/testdata/linux/report/551
+++ b/pkg/report/testdata/linux/report/551
@@ -34,6 +34,7 @@ Stack: (0x94771e60 to 0x94772000)
1fa0: 20000040 80100260 75e869c0 20000000 00000000 20000000 200009c0 00800000
1fc0: 75e869c0 20000000 00000000 00000015 200009c0 00000000 75e86980 20000040
1fe0: 00000001 75e86938 00015750 0004ffc0 20000010 00000000 00000000 00000000
+Backtrace:
[<8054b7c0>] (jffs2_parse_param) from [<8037e608>] (vfs_parse_fs_param+0xf8/0x23c)
[<8037e608>] (vfs_parse_fs_param) from [<8037e7dc>] (vfs_parse_fs_string+0x90/0xd4)
[<8037e7dc>] (vfs_parse_fs_string) from [<8037e8e0>] (generic_parse_monolithic+0xc0/0x114)
diff --git a/pkg/report/testdata/linux/report/552 b/pkg/report/testdata/linux/report/552
index 4d542de34..a568c4400 100644
--- a/pkg/report/testdata/linux/report/552
+++ b/pkg/report/testdata/linux/report/552
@@ -37,6 +37,7 @@ ff80: 00000000 00000000 00000000 00000000 00000036 80100284 9e4fe000 00000036
ffa0: 75e8ec9c 80100260 00000000 00000000 00000004 00005423 200000c0 00000000
ffc0: 00000000 00000000 00000000 00000036 7e89e732 75e8f160 75e8eca0 75e8ec9c
ffe0: 75e8eae8 75e8ead8 000152e8 0004ed10 60000010 00000004 00000000 00000000
+Backtrace:
[<8078e15c>] (io_serial_out) from [<8078fba0>] (serial8250_do_set_ldisc+0x10c/0x114)
[<8078fba0>] (serial8250_do_set_ldisc) from [<8078fbec>] (serial8250_set_ldisc+0x44/0x4c)
[<8078fbec>] (serial8250_set_ldisc) from [<80784f14>] (uart_set_ldisc+0x4c/0x5c)
diff --git a/pkg/report/testdata/linux/report/555 b/pkg/report/testdata/linux/report/555
new file mode 100644
index 000000000..0b49a242d
--- /dev/null
+++ b/pkg/report/testdata/linux/report/555
@@ -0,0 +1,27 @@
+TITLE: Unhandled fault in trace_hardirqs_off
+
+[ 9080.453689][T11783] 8<--- cut here ---
+[ 9080.454760][T11783] Unhandled fault: page domain fault (0x01b) at 0x00000e30
+[ 9080.455761][T11783] pgd = e852c1e3
+[ 9080.456588][T11783] [00000e30] *pgd=e8c3e835
+[ 9080.459344][T11783] Internal error: : 1b [#1] PREEMPT SMP ARM
+[ 9080.461027][T11783] Dumping ftrace buffer:
+[ 9080.462253][T11783] (ftrace buffer empty)
+[ 9080.463160][T11783] Modules linked in:
+[ 9080.464375][T11783] CPU: 1 PID: 11783 Comm: syz-executor.0 Not tainted 5.10.0-rc1+ #18
+[ 9080.465313][T11783] Hardware name: ARM-Versatile Express
+[ 9080.467190][T11783] PC is at __sanitizer_cov_trace_pc+0x4c/0x78
+[ 9080.468129][T11783] LR is at trace_hardirqs_off+0x6c/0x120
+[ 9080.468826][T11783] pc : [<802b4048>] lr : [<802e1324>] psr: 60000193
+[ 9080.469644][T11783] sp : 8bdfc010 ip : 8bdfc020 fp : 8bdfc01c
+[ 9080.470461][T11783] r10: 8591b080 r9 : 8bdfc000 r8 : 00000001
+[ 9080.471172][T11783] r7 : 80100a74 r6 : 844fbc1c r5 : 60000193 r4 : 8bdfc000
+[ 9080.471940][T11783] r3 : 8bdfc000 r2 : 00000000 r1 : 00000000 r0 : 00000000
+[ 9080.472938][T11783] Flags: nZCv IRQs off FIQs on Mode SVC_32 ISA ARM Segment none
+[ 9080.474920][T11783] Control: 10c5387d Table: 8a14806a DAC: 00000051
+[ 9080.475742][T11783] Process syz-executor.0 (pid: 11783, stack limit = 0xdf960dff)
+[ 9080.476792][T11783] Stack: (0x8bdfc010 to 0x00002000)
+[ 9080.477621][T11783] Backtrace:
+[ 9080.479068][T11783] [<802b3ffc>] (__sanitizer_cov_trace_pc) from [<802e1324>] (trace_hardirqs_off+0x6c/0x120)
+[ 9080.480508][T11783] [<802e12b8>] (trace_hardirqs_off) from [<80100a74>] (__dabt_svc+0x54/0xa0)
+[ 9080.481456][T11783] Exception stack(0x8bdfc048 to 0x8bdfc090)
diff --git a/pkg/report/testdata/linux/report/556 b/pkg/report/testdata/linux/report/556
new file mode 100644
index 000000000..84657d8a1
--- /dev/null
+++ b/pkg/report/testdata/linux/report/556
@@ -0,0 +1,65 @@
+TITLE: WARNING: ODEBUG bug in netdev_freemem
+
+[ 7978.980484][ T7864] ------------[ cut here ]------------
+[ 7978.984043][ T7864] WARNING: CPU: 0 PID: 7864 at lib/debugobjects.c:505 debug_print_object+0xb0/0xc4
+[ 7979.032914][ T7864] ODEBUG: free active (active state 0) object type: timer_list hint: delayed_work_timer_fn+0x0/0x28
+[ 7979.034400][ T7864] Modules linked in:
+[ 7979.054500][ T7864] Kernel panic - not syncing: panic_on_warn set ...
+[ 7979.057839][ T7864] CPU: 0 PID: 7864 Comm: kworker/u4:4 Not tainted 5.10.0-rc1+ #19
+[ 7979.060934][ T7864] Hardware name: ARM-Versatile Express
+[ 7979.062695][ T7864] Workqueue: netns cleanup_net
+[ 7979.064032][ T7864] Backtrace:
+[ 7979.066353][ T7864] [<8367729c>] (dump_backtrace) from [<83677618>] (show_stack+0x28/0x2c)
+[ 7979.070036][ T7864] r9:ffffffff r8:800b0093 r7:00000080 r6:00000000 r5:841ff0ac r4:00000000
+[ 7979.071836][ T7864] [<836775f0>] (show_stack) from [<8368d44c>] (dump_stack+0x124/0x170)
+[ 7979.074734][ T7864] r5:00000000 r4:847241a4
+[ 7979.076910][ T7864] [<8368d328>] (dump_stack) from [<83677f30>] (panic+0x1fc/0x5d8)
+[ 7979.080153][ T7864] r10:845657dc r9:ffffffff r8:845657b4 r7:0000000a r6:00000000 r5:00000001
+[ 7979.081621][ T7864] r4:8492fb80 r3:00000000
+[ 7979.083581][ T7864] [<83677d34>] (panic) from [<8014a7fc>] (__warn+0xe0/0x1a8)
+[ 7979.086255][ T7864] r3:00000000 r2:00000000 r1:8b691e80 r0:83f8b770
+[ 7979.088904][ T7864] r7:00000009
+[ 7979.090083][ T7864] [<8014a71c>] (__warn) from [<836783b8>] (warn_slowpath_fmt+0xac/0xec)
+[ 7979.091363][ T7864] r7:8143e868 r6:000001f9 r5:84089c8c r4:84089c4c
+[ 7979.092601][ T7864] [<83678310>] (warn_slowpath_fmt) from [<8143e868>] (debug_print_object+0xb0/0xc4)
+[ 7979.096072][ T7864] r8:83705e38 r7:8405b918 r6:8acfbf30 r5:85006060 r4:8454f4f8
+[ 7979.099174][ T7864] [<8143e7b8>] (debug_print_object) from [<8144001c>] (debug_check_no_obj_freed+0x1f8/0x244)
+[ 7979.102507][ T7864] r8:00000122 r7:8b426228 r6:83705e38 r5:8934ec2c r4:8acfbf30
+[ 7979.105586][ T7864] [<8143fe24>] (debug_check_no_obj_freed) from [<8049290c>] (slab_free_freelist_hook+0xd8/0x16c)
+[ 7979.109889][ T7864] r10:60000113 r9:8934e000 r8:8bd2bcbc r7:8bd2bcb8 r6:00000000 r5:8934e000
+[ 7979.112642][ T7864] r4:85801900
+[ 7979.114443][ T7864] [<80492834>] (slab_free_freelist_hook) from [<8049631c>] (kfree+0xfc/0x4b8)
+[ 7979.118058][ T7864] r10:8454ec94 r9:8454f124 r8:00000000 r7:85801900 r6:8040c948 r5:8934e000
+[ 7979.121083][ T7864] r4:de744620
+[ 7979.122798][ T7864] [<80496220>] (kfree) from [<8040c948>] (kvfree+0x54/0x5c)
+[ 7979.125775][ T7864] r10:8454ec94 r9:8454f124 r8:00000000 r7:00000000 r6:8934e000 r5:00000000
+[ 7979.128950][ T7864] r4:8934e000
+[ 7979.130897][ T7864] [<8040c8f4>] (kvfree) from [<829b9504>] (netdev_freemem+0x24/0x28)
+[ 7979.133095][ T7864] r5:00000004 r4:8934e000
+[ 7979.135298][ T7864] [<829b94e0>] (netdev_freemem) from [<82a07e90>] (netdev_release+0x44/0x50)
+[ 7979.136416][ T7864] r5:00000004 r4:8934e370
+[ 7979.137612][ T7864] [<82a07e4c>] (netdev_release) from [<8172a1e0>] (device_release+0x44/0xdc)
+[ 7979.139005][ T7864] r7:00000000 r6:8ae87c00 r5:82a07e4c r4:8934e370
+[ 7979.140174][ T7864] [<8172a19c>] (device_release) from [<814d43cc>] (kobject_put+0x158/0x2f4)
+[ 7979.141318][ T7864] r6:8b31b200 r5:84733ce8 r4:8934e370
+[ 7979.142444][ T7864] [<814d4274>] (kobject_put) from [<829b9268>] (netdev_run_todo+0x460/0x5cc)
+[ 7979.143774][ T7864] r8:8454edbc r7:00000002 r6:8934e338 r5:00000008 r4:00000001
+[ 7979.145048][ T7864] [<829b8e08>] (netdev_run_todo) from [<829cb45c>] (rtnl_unlock+0x14/0x18)
+[ 7979.146430][ T7864] r10:8298b8ac r9:8bd2be2c r8:8b034ac0 r7:8bd2be18 r6:8bd2be94 r5:00000000
+[ 7979.147575][ T7864] r4:8b034a94
+[ 7979.148702][ T7864] [<829cb448>] (rtnl_unlock) from [<829a4a0c>] (default_device_exit_batch+0x1bc/0x1e8)
+[ 7979.150083][ T7864] [<829a4850>] (default_device_exit_batch) from [<8298b8a4>] (ops_exit_list+0x7c/0x84)
+[ 7979.151527][ T7864] r9:00000000 r8:ffffff90 r7:84806824 r6:8bd2be94 r5:829a2c14 r4:829a4850
+[ 7979.152783][ T7864] [<8298b828>] (ops_exit_list) from [<8298c9b0>] (cleanup_net+0x308/0x4f0)
+[ 7979.154073][ T7864] r7:84804dd0 r6:84804dd0 r5:00000000 r4:84806824
+[ 7979.155446][ T7864] [<8298c6a8>] (cleanup_net) from [<801800f0>] (process_one_work+0x3dc/0xe0c)
+[ 7979.157001][ T7864] r10:8bd2a000 r9:00000000 r8:00000000 r7:85820000 r6:85816400 r5:8b96e680
+[ 7979.158096][ T7864] r4:84804d50
+[ 7979.159299][ T7864] [<8017fd14>] (process_one_work) from [<80180b90>] (worker_thread+0x70/0x7a8)
+[ 7979.160723][ T7864] r10:84506d00 r9:85820038 r8:84804d50 r7:00000000 r6:85820000 r5:8b96e694
+[ 7979.161681][ T7864] r4:8b96e680
+[ 7979.162720][ T7864] [<80180b20>] (worker_thread) from [<8018c338>] (kthread+0x1d0/0x20c)
+[ 7979.164104][ T7864] r10:8ac55e34 r9:8b96e680 r8:80180b20 r7:00000000 r6:8bd2a000 r5:00000000
+[ 7979.165133][ T7864] r4:8b96e600
+[ 7979.166266][ T7864] [<8018c168>] (kthread) from [<8010011c>] (ret_from_fork+0x14/0x38)
+[ 7979.167523][ T7864] Exception stack(0x8bd2bfb0 to 0x8bd2bff8)