aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2020-10-23 12:47:45 +0200
committerDmitry Vyukov <dvyukov@google.com>2020-10-28 17:32:15 +0100
commit3f614d77cbc296d3bb98b633a7442d347fa8fd83 (patch)
tree3700bb6c88d1a01840c875906e99bdfdf3ec84ba
parent96e03c1c31a7f2e7f80b2d8b9f3df117df5030d1 (diff)
pkg/report: arm64 support
Add arm64 test crash and some parsing logic fixes/improvements.
-rw-r--r--pkg/report/linux.go212
-rw-r--r--pkg/report/report.go15
-rw-r--r--pkg/report/testdata/linux/report/1022
-rw-r--r--pkg/report/testdata/linux/report/1152
-rw-r--r--pkg/report/testdata/linux/report/2382
-rw-r--r--pkg/report/testdata/linux/report/2412
-rw-r--r--pkg/report/testdata/linux/report/2422
-rw-r--r--pkg/report/testdata/linux/report/2433
-rw-r--r--pkg/report/testdata/linux/report/3782
-rw-r--r--pkg/report/testdata/linux/report/452
-rw-r--r--pkg/report/testdata/linux/report/462
-rw-r--r--pkg/report/testdata/linux/report/52437
-rw-r--r--pkg/report/testdata/linux/report/52588
-rw-r--r--pkg/report/testdata/linux/report/52642
-rw-r--r--pkg/report/testdata/linux/report/52731
-rw-r--r--pkg/report/testdata/linux/report/52832
-rw-r--r--pkg/report/testdata/linux/report/52930
-rw-r--r--pkg/report/testdata/linux/report/53029
-rw-r--r--pkg/report/testdata/linux/report/53129
-rw-r--r--pkg/report/testdata/linux/report/53220
-rw-r--r--pkg/report/testdata/linux/report/53329
-rw-r--r--pkg/report/testdata/linux/report/53442
-rw-r--r--pkg/report/testdata/linux/report/535152
-rw-r--r--pkg/report/testdata/linux/report/53653
24 files changed, 795 insertions, 65 deletions
diff --git a/pkg/report/linux.go b/pkg/report/linux.go
index 8bba45b13..f1e02eec2 100644
--- a/pkg/report/linux.go
+++ b/pkg/report/linux.go
@@ -96,6 +96,7 @@ func ctorLinux(cfg *config) (Reporter, []string, error) {
// synchronously, which means that maybe the report is not corrupted.
// But of course it can come from another CPU as well.
compile(`PANIC: double fault`),
+ compile(`Internal error:`),
}
// These pattern math kernel reports which are not bugs in itself but contain stack traces.
// If we see them in the middle of another report, we know that the report is potentially corrupted.
@@ -521,7 +522,9 @@ func (ctx *linux) isCorrupted(title string, report []byte, format oopsFormat) (b
return false, ""
}
// Check if the report contains stack trace.
- if !format.noStackTrace && !bytes.Contains(report, []byte("Call Trace")) &&
+ if !format.noStackTrace &&
+ !bytes.Contains(report, []byte("Call Trace")) &&
+ !bytes.Contains(report, []byte("Call trace")) &&
!bytes.Contains(report, []byte("backtrace")) {
return true, "no stack trace in report"
}
@@ -583,16 +586,6 @@ func linuxStallFrameExtractor(frames []string) (string, string) {
// (there can be several variations on the next one).
prev = "smp_call_function"
}
- for _, prefix := range []string{
- "__x64_",
- "SYSC_",
- "SyS_",
- "compat_SYSC_",
- "compat_SyS_",
- "__ia32_sys_",
- } {
- prev = strings.TrimPrefix(prev, prefix)
- }
return prev, ""
}
prev = frame
@@ -700,7 +693,7 @@ var linuxStallAnchorFrames = []*regexp.Regexp{
compile("^compat_sock_ioctl"),
compile("^nfnetlink_rcv_msg"),
compile("^rtnetlink_rcv_msg"),
- compile("^(compat_)?(SYSC|SyS|__sys|___sys|__do_sys|__se_sys|__x64_sys)_(socketpair|connect|ioctl)"),
+ compile("^(sys_)?(socketpair|connect|ioctl)"),
// Page fault entry points:
compile("__do_fault"),
compile("handle_mm_fault"),
@@ -717,7 +710,8 @@ var linuxStallAnchorFrames = []*regexp.Regexp{
var (
linuxSymbolizeRe = regexp.MustCompile(`(?:\[\<(?:[0-9a-f]+)\>\])?[ \t]+(?:[0-9]+:)?([a-zA-Z0-9_.]+)\+0x([0-9a-f]+)/0x([0-9a-f]+)`)
linuxStackFrameRe = regexp.MustCompile(`^ *(?:\[\<?(?:[0-9a-f]+)\>?\] ?){0,2}[ \t]+(?:[0-9]+:)?([a-zA-Z0-9_.]+)\+0x([0-9a-f]+)/0x([0-9a-f]+)`)
- linuxRipFrame = compile(`N?IP:? (?:(?:[0-9]+:)?(?:{{PC}} +){0,2}{{FUNC}}|[0-9]+:0x[0-9a-f]+|(?:[0-9]+:)?{{PC}} +\[< *\(null\)>\] +\(null\)|[0-9]+: +\(null\))`)
+ linuxRipFrame = compile(`(?:IP|NIP|pc ):? (?:(?:[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:")
)
var linuxCorruptedTitles = []*regexp.Regexp{
@@ -726,7 +720,7 @@ var linuxCorruptedTitles = []*regexp.Regexp{
}
var linuxStackKeywords = []*regexp.Regexp{
- regexp.MustCompile(`Call Trace`),
+ regexp.MustCompile(`Call (?:T|t)race`),
regexp.MustCompile(`Allocated:`),
regexp.MustCompile(`Allocated by task [0-9]+:`),
regexp.MustCompile(`Freed:`),
@@ -756,13 +750,18 @@ var linuxStackParams = &stackParams{
"do_error",
"invalid_op",
"_trap",
+ "show_stack",
"dump_stack",
+ "dump_backtrace",
"warn_slowpath",
"warn_alloc",
"__warn",
"debug_object",
"timer_is_static_object",
"work_is_static_object",
+ "__might_fault",
+ "print_unlock",
+ "imbalance_bug",
"lockdep",
"perf_trace",
"lock_acquire",
@@ -772,10 +771,12 @@ var linuxStackParams = &stackParams{
"spin_lock",
"spin_trylock",
"spin_unlock",
- "raw_read_lock",
- "raw_read_trylock",
- "raw_write_lock",
- "raw_write_trylock",
+ "read_lock",
+ "read_trylock",
+ "write_lock",
+ "write_trylock",
+ "read_unlock",
+ "write_unlock",
"down",
"down_read",
"down_write",
@@ -882,12 +883,36 @@ var linuxStackParams = &stackParams{
"wait_for_completion",
"^kfree$",
"kfree_skb",
+ "readb$",
+ "readw$",
+ "readl$",
+ "readq$",
+ "writeb$",
+ "writew$",
+ "writel$",
+ "writeq$",
+ "logic_in",
+ "logic_out",
},
corruptedLines: []*regexp.Regexp{
// Fault injection stacks are frequently intermixed with crash reports.
// Note: the actual symbol can have all kinds of weird suffixes like ".isra.7", ".cold" or ".isra.56.cold.74".
compile(`^( \[\<?(?:0x)?[0-9a-f]+\>?\])? should_fail(slab)?(\.[a-z0-9.]+)?\+0x`),
},
+ stripFramePrefixes: []string{
+ "SYSC_",
+ "SyS_",
+ "____sys_",
+ "___sys_",
+ "__sys_",
+ "__se_sys_",
+ "__do_sys_",
+ "compat_SYSC_",
+ "compat_SyS_",
+ "__x64_",
+ "__ia32_",
+ "__arm64_",
+ },
}
func warningStackFmt(skip ...string) *stackFmt {
@@ -901,7 +926,7 @@ func warningStackFmt(skip ...string) *stackFmt {
parseStackTrace,
},
parts2: []*regexp.Regexp{
- compile("Call Trace:"),
+ linuxCallTrace,
parseStackTrace,
},
skip: skip,
@@ -921,7 +946,7 @@ var linuxOopses = append([]*oops{
stack: &stackFmt{
parts: []*regexp.Regexp{
compile("BUG: KASAN: (?:[a-z\\-]+) in {{FUNC}}"),
- compile("Call Trace:"),
+ linuxCallTrace,
parseStackTrace,
},
},
@@ -933,7 +958,7 @@ var linuxOopses = append([]*oops{
stack: &stackFmt{
parts: []*regexp.Regexp{
compile("BUG: KASAN: double-free or invalid-free in {{FUNC}}"),
- compile("Call Trace:"),
+ linuxCallTrace,
parseStackTrace,
},
skip: []string{"kmem_", "slab_", "kfree", "vunmap", "vfree"},
@@ -954,7 +979,7 @@ var linuxOopses = append([]*oops{
fmt: "KMSAN: kernel-usb-infoleak in %[2]v",
stack: &stackFmt{
parts: []*regexp.Regexp{
- compile("Call Trace:"),
+ linuxCallTrace,
parseStackTrace,
},
skip: []string{"usb_submit_urb", "usb_start_wait_urb", "usb_bulk_msg", "usb_interrupt_msg", "usb_control_msg"},
@@ -966,7 +991,7 @@ var linuxOopses = append([]*oops{
fmt: "KMSAN: %[1]v in %[3]v",
stack: &stackFmt{
parts: []*regexp.Regexp{
- compile("Call Trace:"),
+ linuxCallTrace,
parseStackTrace,
},
},
@@ -983,7 +1008,7 @@ var linuxOopses = append([]*oops{
stack: &stackFmt{
parts: []*regexp.Regexp{
linuxRipFrame,
- compile("Call Trace:"),
+ linuxCallTrace,
parseStackTrace,
},
},
@@ -994,7 +1019,7 @@ var linuxOopses = append([]*oops{
stack: &stackFmt{
parts: []*regexp.Regexp{
linuxRipFrame,
- compile("Call Trace:"),
+ linuxCallTrace,
parseStackTrace,
},
},
@@ -1011,7 +1036,7 @@ var linuxOopses = append([]*oops{
fmt: "BUG: spinlock %[1]v in %[2]v",
stack: &stackFmt{
parts: []*regexp.Regexp{
- compile("Call Trace:"),
+ linuxCallTrace,
parseStackTrace,
},
skip: []string{"spin_"},
@@ -1023,7 +1048,7 @@ var linuxOopses = append([]*oops{
stack: &stackFmt{
parts: []*regexp.Regexp{
linuxRipFrame,
- compile("Call Trace:"),
+ linuxCallTrace,
parseStackTrace,
},
extractor: linuxStallFrameExtractor,
@@ -1041,9 +1066,15 @@ var linuxOopses = append([]*oops{
noStackTrace: true,
},
{
- title: compile("BUG: bad unlock balance detected!"),
- report: compile("BUG: bad unlock balance detected!(?:.*\\n){0,15}?.*is trying to release lock(?:.*\\n){0,15}?.*{{PC}} +{{FUNC}}"),
- fmt: "BUG: bad unlock balance in %[1]v",
+ title: compile("BUG: bad unlock balance detected!"),
+ fmt: "BUG: bad unlock balance in %[1]v",
+ stack: &stackFmt{
+ parts: []*regexp.Regexp{
+ compile("{{PC}} +{{FUNC}}"),
+ linuxCallTrace,
+ parseStackTrace,
+ },
+ },
},
{
title: compile("BUG: held lock freed!"),
@@ -1087,7 +1118,7 @@ var linuxOopses = append([]*oops{
fmt: "BUG: sleeping function called from invalid context in %[2]v",
stack: &stackFmt{
parts: []*regexp.Regexp{
- compile("Call Trace:"),
+ linuxCallTrace,
parseStackTrace,
},
},
@@ -1097,7 +1128,7 @@ var linuxOopses = append([]*oops{
fmt: "BUG: using %[1]v() in preemptible code in %[2]v",
stack: &stackFmt{
parts: []*regexp.Regexp{
- compile("Call Trace:"),
+ linuxCallTrace,
parseStackTrace,
},
skip: []string{"dump_stack", "preemption", "preempt", "debug_",
@@ -1136,6 +1167,19 @@ var linuxOopses = append([]*oops{
noStackTrace: true,
},
{
+ title: compile("BUG: Invalid wait context"),
+ // Somehow amd64 and arm64 report this bug completely differently.
+ // This is arm64 format, but we match amd64 title to not duplicate bug reports.
+ fmt: "WARNING: locking bug in %[1]v",
+ stack: &stackFmt{
+ parts: []*regexp.Regexp{
+ linuxCallTrace,
+ parseStackTrace,
+ },
+ skip: []string{"lock_sock", "release_sock"},
+ },
+ },
+ {
title: compile(`BUG:[[:space:]]*(?:\n|$)`),
fmt: "BUG: corrupted",
corrupted: true,
@@ -1190,6 +1234,11 @@ var linuxOopses = append([]*oops{
stack: warningStackFmt("lock_sock", "release_sock"),
},
{
+ title: compile("WARNING: .*still has locks held!"),
+ report: compile("WARNING: .*still has locks held!(?:.*\\n)+?.*at: {{FUNC}}"),
+ fmt: "WARNING: still has locks held in %[1]v",
+ },
+ {
title: compile("WARNING: lock held when returning to user space"),
report: compile("WARNING: lock held when returning to user space(?:.*\\n)+?.*leaving the kernel with locks still held(?:.*\\n)+?.*at: (?:{{PC}} +)?{{FUNC}}"),
fmt: "WARNING: lock held when returning to user space in %[1]v",
@@ -1254,7 +1303,7 @@ var linuxOopses = append([]*oops{
fmt: "WARNING: suspicious RCU usage in %[2]v",
stack: &stackFmt{
parts: []*regexp.Regexp{
- compile("Call Trace:"),
+ linuxCallTrace,
parseStackTrace,
},
skip: []string{"rcu", "kmem", "slab", "kmalloc",
@@ -1272,9 +1321,15 @@ var linuxOopses = append([]*oops{
noStackTrace: true,
},
{
- title: compile("WARNING: bad unlock balance detected!"),
- report: compile("WARNING: bad unlock balance detected!(?:.*\\n){0,15}?.*is trying to release lock(?:.*\\n){0,15}?.*{{PC}} +{{FUNC}}"),
- fmt: "WARNING: bad unlock balance in %[1]v",
+ title: compile("WARNING: bad unlock balance detected!"),
+ fmt: "WARNING: bad unlock balance in %[1]v",
+ stack: &stackFmt{
+ parts: []*regexp.Regexp{
+ compile("{{PC}} +{{FUNC}}"),
+ linuxCallTrace,
+ parseStackTrace,
+ },
+ },
},
{
title: compile("WARNING: held lock freed!"),
@@ -1352,7 +1407,7 @@ var linuxOopses = append([]*oops{
fmt: "INFO: trying to register non-static key in %[1]v",
stack: &stackFmt{
parts: []*regexp.Regexp{
- compile("Call Trace:"),
+ linuxCallTrace,
parseStackTrace,
},
skip: []string{"stack", "lock", "IRQ"},
@@ -1364,7 +1419,7 @@ var linuxOopses = append([]*oops{
fmt: "INFO: suspicious RCU usage in %[2]v",
stack: &stackFmt{
parts: []*regexp.Regexp{
- compile("Call Trace:"),
+ linuxCallTrace,
parseStackTrace,
},
skip: []string{"rcu", "kmem", "slab", "kmalloc",
@@ -1376,7 +1431,7 @@ var linuxOopses = append([]*oops{
fmt: "INFO: task hung in %[1]v",
stack: &stackFmt{
parts: []*regexp.Regexp{
- compile("Call Trace:"),
+ linuxCallTrace,
parseStackTrace,
},
extractor: linuxHangTaskFrameExtractor,
@@ -1387,7 +1442,7 @@ var linuxOopses = append([]*oops{
fmt: "INFO: task can't die in %[1]v",
stack: &stackFmt{
parts: []*regexp.Regexp{
- compile("Call Trace:"),
+ linuxCallTrace,
parseStackTrace,
},
skip: []string{"schedule"},
@@ -1420,9 +1475,14 @@ var linuxOopses = append([]*oops{
[]byte("Unable to handle kernel paging request"),
[]oopsFormat{
{
- title: compile("Unable to handle kernel paging request"),
- report: compile("Unable to handle kernel paging request(?:.*\\n)+?.*PC is at {{FUNC}}"),
- fmt: "unable to handle kernel paging request in %[1]v",
+ title: compile("Unable to handle kernel paging request"),
+ fmt: "BUG: unable to handle kernel paging request in %[1]v",
+ stack: &stackFmt{
+ parts: []*regexp.Regexp{
+ linuxCallTrace,
+ parseStackTrace,
+ },
+ },
},
},
[]*regexp.Regexp{},
@@ -1436,7 +1496,7 @@ var linuxOopses = append([]*oops{
stack: &stackFmt{
parts: []*regexp.Regexp{
linuxRipFrame,
- compile("Call Trace:"),
+ linuxCallTrace,
parseStackTrace,
},
},
@@ -1453,7 +1513,7 @@ var linuxOopses = append([]*oops{
stack: &stackFmt{
parts: []*regexp.Regexp{
linuxRipFrame,
- compile("Call Trace:"),
+ linuxCallTrace,
parseStackTrace,
},
},
@@ -1478,7 +1538,7 @@ var linuxOopses = append([]*oops{
fmt: "kernel panic: stack is corrupted in %[1]v",
stack: &stackFmt{
parts: []*regexp.Regexp{
- compile("Call Trace:"),
+ linuxCallTrace,
parseStackTrace,
},
skip: []string{"stack_chk"},
@@ -1490,7 +1550,7 @@ var linuxOopses = append([]*oops{
fmt: "kernel panic: corrupted stack end in %[1]v",
stack: &stackFmt{
parts: []*regexp.Regexp{
- compile("Call Trace:"),
+ linuxCallTrace,
parseStackTrace,
},
skip: []string{"schedule", "retint_kernel"},
@@ -1555,7 +1615,7 @@ var linuxOopses = append([]*oops{
fmt: "BUG: bad usercopy in %[1]v",
stack: &stackFmt{
parts: []*regexp.Regexp{
- compile("Call Trace:"),
+ linuxCallTrace,
parseStackTrace,
},
skip: []string{"usercopy", "__check"},
@@ -1566,7 +1626,7 @@ var linuxOopses = append([]*oops{
fmt: "BUG: corrupted list in %[1]v",
stack: &stackFmt{
parts: []*regexp.Regexp{
- compile("Call Trace:"),
+ linuxCallTrace,
parseStackTrace,
},
},
@@ -1576,7 +1636,7 @@ var linuxOopses = append([]*oops{
fmt: "kernel BUG at %[1]v",
stack: &stackFmt{
parts: []*regexp.Regexp{
- compile("Call Trace:"),
+ linuxCallTrace,
parseStackTrace,
},
},
@@ -1659,7 +1719,7 @@ var linuxOopses = append([]*oops{
fmt: "UBSAN: undefined-behaviour in %[1]v",
stack: &stackFmt{
parts: []*regexp.Regexp{
- compile("Call Trace:"),
+ linuxCallTrace,
parseStackTrace,
},
skip: []string{"ubsan", "overflow"},
@@ -1671,7 +1731,7 @@ var linuxOopses = append([]*oops{
fmt: "UBSAN: %[1]v in %[2]v",
stack: &stackFmt{
parts: []*regexp.Regexp{
- compile("Call Trace:"),
+ linuxCallTrace,
parseStackTrace,
},
skip: []string{"ubsan", "overflow"},
@@ -1703,6 +1763,54 @@ var linuxOopses = append([]*oops{
[]*regexp.Regexp{},
},
{
+ []byte("Internal error:"),
+ []oopsFormat{
+ {
+ title: compile("Internal error:"),
+ fmt: "Internal error in %[1]v",
+ stack: &stackFmt{
+ parts: []*regexp.Regexp{
+ linuxCallTrace,
+ parseStackTrace,
+ },
+ },
+ },
+ },
+ []*regexp.Regexp{},
+ },
+ {
+ []byte("Unhandled fault:"),
+ []oopsFormat{
+ {
+ title: compile("Unhandled fault:"),
+ fmt: "Unhandled fault in %[1]v",
+ stack: &stackFmt{
+ parts: []*regexp.Regexp{
+ linuxCallTrace,
+ parseStackTrace,
+ },
+ },
+ },
+ },
+ []*regexp.Regexp{},
+ },
+ {
+ []byte("Alignment trap:"),
+ []oopsFormat{
+ {
+ title: compile("Alignment trap:"),
+ fmt: "Alignment trap in %[1]v",
+ stack: &stackFmt{
+ parts: []*regexp.Regexp{
+ linuxCallTrace,
+ parseStackTrace,
+ },
+ },
+ },
+ },
+ []*regexp.Regexp{},
+ },
+ {
[]byte("trusty: panic"),
[]oopsFormat{
{
diff --git a/pkg/report/report.go b/pkg/report/report.go
index 13f76e67d..bd648e8ec 100644
--- a/pkg/report/report.go
+++ b/pkg/report/report.go
@@ -479,6 +479,9 @@ type stackParams struct {
// If we looked at any lines that match corruptedLines during report analysis,
// then the report is marked as corrupted.
corruptedLines []*regexp.Regexp
+ // Prefixes that need to be removed from frames.
+ // E.g. syscall prefixes as different arches have different prefixes.
+ stripFramePrefixes []string
}
func extractStackFrame(params *stackParams, stack *stackFmt, output []byte) (string, string) {
@@ -523,7 +526,7 @@ nextPart:
break
}
}
- frames = appendStackFrame(frames, match, skipRe)
+ frames = appendStackFrame(frames, match, params, skipRe)
}
} else {
for s.Scan() {
@@ -535,7 +538,7 @@ nextPart:
if match == nil {
continue
}
- frames = appendStackFrame(frames, match, skipRe)
+ frames = appendStackFrame(frames, match, params, skipRe)
break
}
}
@@ -546,13 +549,17 @@ nextPart:
return extractor(frames)
}
-func appendStackFrame(frames []string, match [][]byte, skipRe *regexp.Regexp) []string {
+func appendStackFrame(frames []string, match [][]byte, params *stackParams, skipRe *regexp.Regexp) []string {
if len(match) < 2 {
return frames
}
for _, frame := range match[1:] {
if frame != nil && (skipRe == nil || !skipRe.Match(frame)) {
- frames = append(frames, string(frame))
+ frameName := string(frame)
+ for _, prefix := range params.stripFramePrefixes {
+ frameName = strings.TrimPrefix(frameName, prefix)
+ }
+ frames = append(frames, frameName)
break
}
}
diff --git a/pkg/report/testdata/linux/report/102 b/pkg/report/testdata/linux/report/102
index 74473eac3..76447d888 100644
--- a/pkg/report/testdata/linux/report/102
+++ b/pkg/report/testdata/linux/report/102
@@ -1,4 +1,4 @@
-TITLE: BUG: bad unlock balance detected! ]
+TITLE: BUG: bad unlock balance in corrupted
CORRUPTED: Y
[ 46.415093] syz2: link speed 10 Mbps
diff --git a/pkg/report/testdata/linux/report/115 b/pkg/report/testdata/linux/report/115
index 8ebd9beda..750ed9a58 100644
--- a/pkg/report/testdata/linux/report/115
+++ b/pkg/report/testdata/linux/report/115
@@ -1,4 +1,4 @@
-TITLE: BUG: bad unlock balance detected! ]
+TITLE: BUG: bad unlock balance in corrupted
CORRUPTED: Y
[ 76.640408] binder: undelivered TRANSACTION_ERROR: 29189
diff --git a/pkg/report/testdata/linux/report/238 b/pkg/report/testdata/linux/report/238
index 45ee9ca96..857a3a9d1 100644
--- a/pkg/report/testdata/linux/report/238
+++ b/pkg/report/testdata/linux/report/238
@@ -1,4 +1,4 @@
-TITLE: Unable to handle kernel paging request at virtual address ADDR
+TITLE: BUG: unable to handle kernel paging request in corrupted
CORRUPTED: Y
Unable to handle kernel paging request at virtual address 80b0f484
diff --git a/pkg/report/testdata/linux/report/241 b/pkg/report/testdata/linux/report/241
index 97a186fb1..891cf28ad 100644
--- a/pkg/report/testdata/linux/report/241
+++ b/pkg/report/testdata/linux/report/241
@@ -1,4 +1,4 @@
-TITLE: kernel panic: Fatal exception
+TITLE: Unhandled fault in corrupted
CORRUPTED: Y
Unhandled fault: page domain fault (0x81b) at 0x00001044
diff --git a/pkg/report/testdata/linux/report/242 b/pkg/report/testdata/linux/report/242
index 08370411e..610131abf 100644
--- a/pkg/report/testdata/linux/report/242
+++ b/pkg/report/testdata/linux/report/242
@@ -1,4 +1,4 @@
-TITLE: kernel panic: Fatal exception
+TITLE: Alignment trap in corrupted
CORRUPTED: Y
Alignment trap: not handling instruction e1932f9f at [<8028bd58>]
diff --git a/pkg/report/testdata/linux/report/243 b/pkg/report/testdata/linux/report/243
index 78616d3ef..6dca35c42 100644
--- a/pkg/report/testdata/linux/report/243
+++ b/pkg/report/testdata/linux/report/243
@@ -1,4 +1,5 @@
-TITLE: unable to handle kernel paging request in migrate_task_rq_fair
+# TODO: this is uncorrupted ARM report.
+TITLE: BUG: unable to handle kernel paging request in corrupted
CORRUPTED: Y
syzkaller login: Unable to handle kernel paging request at virtual address fc14ef08
diff --git a/pkg/report/testdata/linux/report/378 b/pkg/report/testdata/linux/report/378
index 66dd079b3..3ef87c06f 100644
--- a/pkg/report/testdata/linux/report/378
+++ b/pkg/report/testdata/linux/report/378
@@ -1,4 +1,4 @@
-TITLE: INFO: rcu detected stall in inotify_init
+TITLE: INFO: rcu detected stall in sys_inotify_init
TYPE: HANG
[ 990.309025][ C0] rcu: INFO: rcu_preempt self-detected stall on CPU
diff --git a/pkg/report/testdata/linux/report/45 b/pkg/report/testdata/linux/report/45
index 0e1c27412..77a7982ac 100644
--- a/pkg/report/testdata/linux/report/45
+++ b/pkg/report/testdata/linux/report/45
@@ -1,4 +1,4 @@
-TITLE: unable to handle kernel paging request in _snd_timer_stop
+TITLE: BUG: unable to handle kernel paging request in corrupted
CORRUPTED: Y
[ 167.347989] Disabling lock debugging due to kernel taint
diff --git a/pkg/report/testdata/linux/report/46 b/pkg/report/testdata/linux/report/46
index 9bf1b2d47..75994778d 100644
--- a/pkg/report/testdata/linux/report/46
+++ b/pkg/report/testdata/linux/report/46
@@ -1,4 +1,4 @@
-TITLE: unable to handle kernel paging request in blk_rq_map_sg
+TITLE: BUG: unable to handle kernel paging request in corrupted
CORRUPTED: Y
[ 1722.511384] Unable to handle kernel paging request at virtual address 0c0c9ca0
diff --git a/pkg/report/testdata/linux/report/524 b/pkg/report/testdata/linux/report/524
new file mode 100644
index 000000000..c1e022c56
--- /dev/null
+++ b/pkg/report/testdata/linux/report/524
@@ -0,0 +1,37 @@
+TITLE: Internal error in ns558_init
+
+[ 211.592905][ T1] Internal error: synchronous external abort: 96000010 [#1] PREEMPT SMP
+[ 211.594621][ T1] Dumping ftrace buffer:
+[ 211.596062][ T1] (ftrace buffer empty)
+[ 211.596883][ T1] Modules linked in:
+[ 211.598101][ T1] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 5.9.0-12994-gf9893351acae #11
+[ 211.598861][ T1] Hardware name: linux,dummy-virt (DT)
+[ 211.599762][ T1] pstate: 40000005 (nZcv daif -PAN -UAO -TCO BTYPE=--)
+[ 211.600602][ T1] pc : __raw_readb+0x18/0x2c
+[ 211.601220][ T1] lr : __raw_readb+0x18/0x2c
+[ 211.601722][ T1] sp : ffff0000401f7c40
+[ 211.602276][ T1] x29: ffff0000401f7c40 x28: 0000000000000007
+[ 211.603165][ T1] x27: ffffa00017c462a0 x26: ffffa00017e310d8
+[ 211.603979][ T1] x25: 0000000000000201 x24: ffffa0001b484900
+[ 211.604829][ T1] x23: dfffa00000000000 x22: ffffa00016b39140
+[ 211.605882][ T1] x21: ffffa0001a3059e0 x20: 0000000000ffbffe
+[ 211.606753][ T1] x19: fffffdfffec00201 x18: 00000000000011d8
+[ 211.607569][ T1] x17: 0000000000001270 x16: 00000000000011e0
+[ 211.608388][ T1] x15: 0000000000001408 x14: ffffa0001012790c
+[ 211.609208][ T1] x13: ffffa000101275dc x12: ffff0000401e8000
+[ 211.610012][ T1] x11: 0000000000000007 x10: 0000000000ffbffe
+[ 211.610850][ T1] x9 : 0000000000000201 x8 : ffffa00011e6a1c4
+[ 211.611769][ T1] x7 : ffffa0001a305920 x6 : 0000000000000000
+[ 211.612591][ T1] x5 : ffff0000401e8000 x4 : ffffa00011e69e68
+[ 211.613386][ T1] x3 : ffff0000401e8000 x2 : 0000000000000000
+[ 211.614175][ T1] x1 : 0000000000000000 x0 : 0000000000000000
+[ 211.615210][ T1] Call trace:
+[ 211.616071][ T1] __raw_readb+0x18/0x2c
+[ 211.616694][ T1] logic_inb+0x50/0x13c
+[ 211.617265][ T1] ns558_init+0x17c/0x63c
+[ 211.617822][ T1] do_one_initcall+0x294/0x61c
+[ 211.618467][ T1] kernel_init_freeable+0x790/0x798
+[ 211.619101][ T1] kernel_init+0x18/0x1d4
+[ 211.619667][ T1] ret_from_fork+0x10/0x30
+[ 211.620699][ T1] Code: 910003fd f9000bf3 aa0003f3 97932e41 (08dffe60)
+[ 211.622487][ T1] ---[ end trace ec5638d8e916ae8b ]---
diff --git a/pkg/report/testdata/linux/report/525 b/pkg/report/testdata/linux/report/525
new file mode 100644
index 000000000..88e0747c4
--- /dev/null
+++ b/pkg/report/testdata/linux/report/525
@@ -0,0 +1,88 @@
+TITLE: WARNING: ODEBUG bug in netdev_freemem
+
+[ 775.101040][ T126] ------------[ cut here ]------------
+[ 775.104725][ T126] ODEBUG: free active (active state 0) object type: timer_list hint: delayed_work_timer_fn+0x0/0x90
+[ 775.112723][ T126] WARNING: CPU: 0 PID: 126 at lib/debugobjects.c:505 debug_print_object+0x188/0x268
+[ 775.114654][ T126] Modules linked in:
+[ 775.116483][ T126] CPU: 0 PID: 126 Comm: kworker/u8:3 Not tainted 5.9.0-12994-gf9893351acae #15
+[ 775.117494][ T126] Hardware name: linux,dummy-virt (DT)
+[ 775.124422][ T126] Workqueue: netns cleanup_net
+[ 775.126620][ T126] pstate: 80000005 (Nzcv daif -PAN -UAO -TCO BTYPE=--)
+[ 775.127924][ T126] pc : debug_print_object+0x188/0x268
+[ 775.129340][ T126] lr : debug_print_object+0x188/0x268
+[ 775.130352][ T126] sp : ffff000040ddf5b0
+[ 775.131234][ T126] x29: ffff000040ddf5b0 x28: ffff0000403d97e0
+[ 775.132846][ T126] x27: ffffa000177229c0 x26: dfffa00000000000
+[ 775.134179][ T126] x25: ffffa00010362e48 x24: ffffa00017bfdb40
+[ 775.135492][ T126] x23: ffffa000177229c0 x22: 0000000000000003
+[ 775.136916][ T126] x21: ffffa00017bfd340 x20: ffffa00019590218
+[ 775.138465][ T126] x19: ffff0000403d97e0 x18: ffff00006a1ce448
+[ 775.140281][ T126] x17: 0000000000000000 x16: 0000000000000000
+[ 775.142963][ T126] x15: 0000000000000001 x14: ffff000040dd0000
+[ 775.144556][ T126] x13: 0000000000000001 x12: ffff80000d439ca4
+[ 775.147130][ T126] x11: 1fffe0000d439ca3 x10: ffff80000d439ca3
+[ 775.149382][ T126] x9 : dfffa00000000000 x8 : ffff00006a1ce51b
+[ 775.150784][ T126] x7 : 0000000000000001 x6 : ffff00006a1ce518
+[ 775.152146][ T126] x5 : ffff000040dd0000 x4 : 0000000000000000
+[ 775.153573][ T126] x3 : ffffa000102ef6b0 x2 : ffff8000081bbe7e
+[ 775.154824][ T126] x1 : ec91fe872c83d400 x0 : 0000000000000000
+[ 775.156705][ T126] Call trace:
+[ 775.158009][ T126] debug_print_object+0x188/0x268
+[ 775.159058][ T126] debug_check_no_obj_freed+0x200/0x438
+[ 775.160743][ T126] slab_free_freelist_hook+0x174/0x1f8
+[ 775.161760][ T126] kfree+0x12c/0x4b8
+[ 775.162627][ T126] kvfree+0x60/0x78
+[ 775.163497][ T126] netdev_freemem+0x4c/0x68
+[ 775.164302][ T126] netdev_release+0x84/0xb0
+[ 775.165232][ T126] device_release+0x8c/0x1f0
+[ 775.166582][ T126] kobject_put+0x1a4/0x570
+[ 775.167636][ T126] netdev_run_todo+0x5f8/0x8b0
+[ 775.168683][ T126] rtnl_unlock+0x14/0x20
+[ 775.170440][ T126] default_device_exit_batch+0x294/0x330
+[ 775.172526][ T126] ops_exit_list.isra.0+0xe4/0x148
+[ 775.173426][ T126] cleanup_net+0x444/0x880
+[ 775.174258][ T126] process_one_work+0x898/0x1af8
+[ 775.175130][ T126] worker_thread+0x3e8/0xc28
+[ 775.175946][ T126] kthread+0x30c/0x408
+[ 775.176830][ T126] ret_from_fork+0x10/0x30
+[ 775.178544][ T126] Kernel panic - not syncing: panic_on_warn set ...
+[ 775.179936][ T126] CPU: 0 PID: 126 Comm: kworker/u8:3 Not tainted 5.9.0-12994-gf9893351acae #15
+[ 775.180903][ T126] Hardware name: linux,dummy-virt (DT)
+[ 775.181830][ T126] Workqueue: netns cleanup_net
+[ 775.182920][ T126] Call trace:
+[ 775.183708][ T126] dump_backtrace+0x0/0x4d0
+[ 775.184523][ T126] show_stack+0x2c/0x80
+[ 775.185469][ T126] dump_stack+0x1b0/0x254
+[ 775.187194][ T126] panic+0x3d0/0x7fc
+[ 775.188630][ T126] __warn+0x254/0x2e8
+[ 775.189853][ T126] report_bug+0x240/0x398
+[ 775.190728][ T126] bug_handler+0x48/0xb8
+[ 775.192571][ T126] brk_handler+0x15c/0x2a8
+[ 775.193482][ T126] do_debug_exception+0x204/0x6d0
+[ 775.194321][ T126] el1_sync_handler+0x174/0x260
+[ 775.195145][ T126] el1_sync+0x80/0x100
+[ 775.196072][ T126] debug_print_object+0x188/0x268
+[ 775.197021][ T126] debug_check_no_obj_freed+0x200/0x438
+[ 775.198072][ T126] slab_free_freelist_hook+0x174/0x1f8
+[ 775.199157][ T126] kfree+0x12c/0x4b8
+[ 775.200018][ T126] kvfree+0x60/0x78
+[ 775.200908][ T126] netdev_freemem+0x4c/0x68
+[ 775.201774][ T126] netdev_release+0x84/0xb0
+[ 775.202683][ T126] device_release+0x8c/0x1f0
+[ 775.203555][ T126] kobject_put+0x1a4/0x570
+[ 775.204412][ T126] netdev_run_todo+0x5f8/0x8b0
+[ 775.205295][ T126] rtnl_unlock+0x14/0x20
+[ 775.207013][ T126] default_device_exit_batch+0x294/0x330
+[ 775.209076][ T126] ops_exit_list.isra.0+0xe4/0x148
+[ 775.210660][ T126] cleanup_net+0x444/0x880
+[ 775.211567][ T126] process_one_work+0x898/0x1af8
+[ 775.212461][ T126] worker_thread+0x3e8/0xc28
+[ 775.213349][ T126] kthread+0x30c/0x408
+[ 775.213905][ T126] ret_from_fork+0x10/0x30
+[ 775.216521][ T126] SMP: stopping secondary CPUs
+[ 775.220505][ T126] Dumping ftrace buffer:
+[ 775.224102][ T126] (ftrace buffer empty)
+[ 775.226537][ T126] Kernel Offset: disabled
+[ 775.228303][ T126] CPU features: 0x0240022,61002082
+[ 775.229604][ T126] Memory Limit: none
+[ 775.233306][ T126] Rebooting in 1 seconds..
diff --git a/pkg/report/testdata/linux/report/526 b/pkg/report/testdata/linux/report/526
new file mode 100644
index 000000000..88cc63750
--- /dev/null
+++ b/pkg/report/testdata/linux/report/526
@@ -0,0 +1,42 @@
+TITLE: INFO: task hung in register_netdevice_notifier
+TYPE: HANG
+
+[ 610.334229][ T1478] INFO: task syz-fuzzer:4433 blocked for more than 143 seconds.
+[ 610.337281][ T1478] Not tainted 5.9.0-12994-gf9893351acae #15
+[ 610.338689][ T1478] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
+[ 610.361669][ T1478] task:syz-fuzzer state:D stack: 0 pid: 4433 ppid: 4402 flags:0x00000001
+[ 610.364848][ T1478] Call trace:
+[ 610.366182][ T1478] __switch_to+0x210/0x450
+[ 610.367628][ T1478] __schedule+0x894/0x1eb8
+[ 610.368937][ T1478] schedule+0xac/0x228
+[ 610.371513][ T1478] rwsem_down_write_slowpath+0x604/0xc98
+[ 610.373033][ T1478] down_write+0x134/0x1f0
+[ 610.374427][ T1478] register_netdevice_notifier+0x38/0x238
+[ 610.375901][ T1478] bcm_init+0x144/0x1b8
+[ 610.377193][ T1478] can_create+0x244/0x498
+[ 610.378892][ T1478] __sock_create+0x3ec/0x740
+[ 610.401364][ T1478] __sys_socket+0xf0/0x208
+[ 610.403935][ T1478] __arm64_sys_socket+0x70/0xa8
+[ 610.405432][ T1478] el0_svc_common.constprop.0+0x158/0x530
+[ 610.406871][ T1478] do_el0_svc+0x58/0x148
+[ 610.408121][ T1478] el0_sync_handler+0x1f4/0x200
+[ 610.409317][ T1478] el0_sync+0x174/0x180
+[ 610.412964][ T1478]
+[ 610.412964][ T1478] Showing all locks held in the system:
+[ 610.415916][ T1478] 4 locks held by kworker/u8:0/7:
+[ 610.417901][ T1478] 1 lock held by khungtaskd/1478:
+[ 610.419240][ T1478] #0: ffffa00019769560 (rcu_read_lock){....}-{1:2}, at: debug_show_all_locks+0x70/0x258
+[ 610.446034][ T1478] 3 locks held by kworker/3:1/1855:
+[ 610.447236][ T1478] #0: ffff000040020d38 ((wq_completion)events){+.+.}-{0:0}, at: process_one_work+0x76c/0x1af8
+[ 610.472660][ T1478] #1: ffff000040c5fd40 ((work_completion)(&fqdir->destroy_work)){+.+.}-{0:0}, at: process_one_work+0x76c/0x1af8
+[ 610.476736][ T1478] #2: ffffa0001976f170 (rcu_state.barrier_mutex){+.+.}-{3:3}, at: rcu_barrier+0x48/0x528
+[ 610.484255][ T1478] 1 lock held by klogd/4083:
+[ 610.486172][ T1478] 1 lock held by dhcpcd/4135:
+[ 610.487825][ T1478] #0: ffff000049d2c120 (sk_lock-AF_PACKET){+.+.}-{0:0}, at: packet_do_bind+0x48/0xea8
+[ 610.494582][ T1478] 2 locks held by getty/4253:
+[ 610.499360][ T1478] #0: ffff00004aeec098 (&tty->ldisc_sem){++++}-{0:0}, at: ldsem_down_read+0x44/0x58
+[ 610.535135][ T1478] #1: ffffa0001e3fc2e8 (&ldata->atomic_read_lock){+.+.}-{3:3}, at: n_tty_read+0x1d0/0x1bd8
+[ 610.539204][ T1478] 1 lock held by syz-fuzzer/4433:
+[ 610.561088][ T1478] #0: ffffa0001ad1ceb0 (pernet_ops_rwsem){++++}-{3:3}, at: register_netdevice_notifier+0x38/0x238
+[ 610.566582][ T1478]
+[ 610.624513][ T1478] =============================================
diff --git a/pkg/report/testdata/linux/report/527 b/pkg/report/testdata/linux/report/527
new file mode 100644
index 000000000..0f0bfc288
--- /dev/null
+++ b/pkg/report/testdata/linux/report/527
@@ -0,0 +1,31 @@
+TITLE: WARNING: suspicious RCU usage in gc_worker
+
+[ 388.069210][ T178] =============================
+[ 388.070602][ T178] WARNING: suspicious RCU usage
+[ 388.072159][ T178] 5.9.0-12994-gf9893351acae #15 Not tainted
+[ 388.073462][ T178] -----------------------------
+[ 388.074687][ T178] kernel/sched/core.c:7264 Illegal context switch in RCU-sched read-side critical section!
+[ 388.075918][ T178]
+[ 388.075918][ T178] other info that might help us debug this:
+[ 388.075918][ T178]
+[ 388.120354][ T178]
+[ 388.120354][ T178] rcu_scheduler_active = 2, debug_locks = 1
+[ 388.122051][ T178] 2 locks held by kworker/u4:4/178:
+[ 388.123408][ T178] #0: ffff00004002a138 ((wq_completion)events_power_efficient){+.+.}-{0:0}, at: process_one_work+0x76c/0x1af8
+[ 388.179802][ T178] #1: ffff000040ecfd40 ((work_completion)(&(&gc_work->dwork)->work)){+.+.}-{0:0}, at: process_one_work+0x76c/0x1af8
+[ 388.182417][ T178]
+[ 388.182417][ T178] stack backtrace:
+[ 388.183605][ T178] CPU: 1 PID: 178 Comm: kworker/u4:4 Not tainted 5.9.0-12994-gf9893351acae #15
+[ 388.184315][ T178] Hardware name: linux,dummy-virt (DT)
+[ 388.185529][ T178] Workqueue: events_power_efficient gc_worker
+[ 388.186616][ T178] Call trace:
+[ 388.187209][ T178] dump_backtrace+0x0/0x4d0
+[ 388.187731][ T178] show_stack+0x2c/0x80
+[ 388.188239][ T178] dump_stack+0x1b0/0x254
+[ 388.188785][ T178] lockdep_rcu_suspicious+0x134/0x14c
+[ 388.189324][ T178] ___might_sleep+0x440/0x4d8
+[ 388.189868][ T178] gc_worker+0x4bc/0xaa0
+[ 388.190456][ T178] process_one_work+0x898/0x1af8
+[ 388.191026][ T178] worker_thread+0x3e8/0xc28
+[ 388.191549][ T178] kthread+0x30c/0x408
+[ 388.192118][ T178] ret_from_fork+0x10/0x30
diff --git a/pkg/report/testdata/linux/report/528 b/pkg/report/testdata/linux/report/528
new file mode 100644
index 000000000..ce9e453a2
--- /dev/null
+++ b/pkg/report/testdata/linux/report/528
@@ -0,0 +1,32 @@
+TITLE: WARNING: locking bug in do_ipv6_setsockopt
+
+[ 513.624689][ T4448] =============================
+[ 513.625024][ T4448] [ BUG: Invalid wait context ]
+[ 513.625454][ T4448] 5.9.0-12994-gf9893351acae #15 Not tainted
+[ 513.625876][ T4448] -----------------------------
+[ 513.626258][ T4448] syz-executor.0/4448 is trying to lock:
+[ 513.626811][ T4448] ffff00004a747498 (&mm->mmap_lock){++++}-{3:3}, at: __might_fault+0x108/0x1b0
+[ 513.628246][ T4448] other info that might help us debug this:
+[ 513.628677][ T4448] context-{4:4}
+[ 513.629067][ T4448] 1 lock held by syz-executor.0/4448:
+[ 513.629453][ T4448] #0: ffffa00019769560 (rcu_read_lock){....}-{1:2}, at: count_memcg_event_mm+0x24/0x2f0
+[ 513.630554][ T4448] stack backtrace:
+[ 513.631277][ T4448] CPU: 0 PID: 4448 Comm: syz-executor.0 Not tainted 5.9.0-12994-gf9893351acae #15
+[ 513.631738][ T4448] Hardware name: linux,dummy-virt (DT)
+[ 513.632435][ T4448] Call trace:
+[ 513.632830][ T4448] dump_backtrace+0x0/0x4d0
+[ 513.633216][ T4448] show_stack+0x2c/0x80
+[ 513.633605][ T4448] dump_stack+0x1b0/0x254
+[ 513.633979][ T4448] __lock_acquire+0x1a04/0x4930
+[ 513.634359][ T4448] lock_acquire+0x278/0xb88
+[ 513.634769][ T4448] __might_fault+0x138/0x1b0
+[ 513.635149][ T4448] do_ipv6_setsockopt.isra.0+0x4a8/0x4738
+[ 513.635538][ T4448] ipv6_setsockopt+0x124/0x408
+[ 513.635909][ T4448] tcp_setsockopt+0x120/0x2548
+[ 513.636279][ T4448] sock_common_setsockopt+0xa8/0xe0
+[ 513.636670][ T4448] __sys_setsockopt+0x1f8/0x470
+[ 513.637057][ T4448] __arm64_sys_setsockopt+0xa8/0x108
+[ 513.637464][ T4448] el0_svc_common.constprop.0+0x158/0x530
+[ 513.637904][ T4448] do_el0_svc+0x58/0x148
+[ 513.638295][ T4448] el0_sync_handler+0x1f4/0x200
+[ 513.638674][ T4448] el0_sync+0x174/0x180
diff --git a/pkg/report/testdata/linux/report/529 b/pkg/report/testdata/linux/report/529
new file mode 100644
index 000000000..30eefd426
--- /dev/null
+++ b/pkg/report/testdata/linux/report/529
@@ -0,0 +1,30 @@
+TITLE: WARNING: suspicious RCU usage in sys_rt_sigreturn
+
+[ 581.924125][ T4410] =============================
+[ 581.925315][ T4410] WARNING: suspicious RCU usage
+[ 581.926740][ T4410] 5.9.0-12994-gf9893351acae #15 Not tainted
+[ 582.016302][ T4410] -----------------------------
+[ 582.017910][ T4410] kernel/sched/core.c:7264 Illegal context switch in RCU-bh read-side critical section!
+[ 582.023295][ T4410]
+[ 582.023295][ T4410] other info that might help us debug this:
+[ 582.023295][ T4410]
+[ 582.025057][ T4410]
+[ 582.025057][ T4410] rcu_scheduler_active = 2, debug_locks = 1
+[ 582.044500][ T4410] no locks held by syz-fuzzer/4410.
+[ 582.045998][ T4410]
+[ 582.045998][ T4410] stack backtrace:
+[ 582.047912][ T4410] CPU: 0 PID: 4410 Comm: syz-fuzzer Not tainted 5.9.0-12994-gf9893351acae #15
+[ 582.049096][ T4410] Hardware name: linux,dummy-virt (DT)
+[ 582.050721][ T4410] Call trace:
+[ 582.051777][ T4410] dump_backtrace+0x0/0x4d0
+[ 582.052754][ T4410] show_stack+0x2c/0x80
+[ 582.053616][ T4410] dump_stack+0x1b0/0x254
+[ 582.054527][ T4410] lockdep_rcu_suspicious+0x134/0x14c
+[ 582.055451][ T4410] ___might_sleep+0x478/0x4d8
+[ 582.056345][ T4410] __might_sleep+0x88/0x168
+[ 582.057285][ T4410] __might_fault+0xc4/0x1b0
+[ 582.058241][ T4410] __arm64_sys_rt_sigreturn+0x278/0x1990
+[ 582.059448][ T4410] el0_svc_common.constprop.0+0x158/0x530
+[ 582.060390][ T4410] do_el0_svc+0x58/0x148
+[ 582.061327][ T4410] el0_sync_handler+0x1f4/0x200
+[ 582.062214][ T4410] el0_sync+0x174/0x180
diff --git a/pkg/report/testdata/linux/report/530 b/pkg/report/testdata/linux/report/530
new file mode 100644
index 000000000..ff8ca4f19
--- /dev/null
+++ b/pkg/report/testdata/linux/report/530
@@ -0,0 +1,29 @@
+TITLE: WARNING: bad unlock balance in restore_fpsimd_context
+
+[ 753.902734][ T4405] =====================================
+[ 753.903682][ T4405] WARNING: bad unlock balance detected!
+[ 753.904679][ T4405] 5.9.0-12994-gf9893351acae #15 Not tainted
+[ 753.905336][ T4405] -------------------------------------
+[ 753.905757][ T4405] syz-fuzzer/4405 is trying to release lock (&mm->mmap_lock) at:
+[ 753.906721][ T4405] [<ffffa00010726344>] __might_fault+0x154/0x1b0
+[ 753.907110][ T4405] but there are no more locks to release!
+[ 753.907490][ T4405]
+[ 753.907490][ T4405] other info that might help us debug this:
+[ 753.908261][ T4405] no locks held by syz-fuzzer/4405.
+[ 753.908865][ T4405]
+[ 753.908865][ T4405] stack backtrace:
+[ 753.910040][ T4405] CPU: 1 PID: 4405 Comm: syz-fuzzer Not tainted 5.9.0-12994-gf9893351acae #15
+[ 753.910746][ T4405] Hardware name: linux,dummy-virt (DT)
+[ 753.911978][ T4405] Call trace:
+[ 753.912644][ T4405] dump_backtrace+0x0/0x4d0
+[ 753.913320][ T4405] show_stack+0x2c/0x80
+[ 753.914002][ T4405] dump_stack+0x1b0/0x254
+[ 753.914652][ T4405] print_unlock_imbalance_bug+0x170/0x188
+[ 753.915352][ T4405] lock_release+0x69c/0xa68
+[ 753.916058][ T4405] __might_fault+0x170/0x1b0
+[ 753.916798][ T4405] restore_fpsimd_context+0x418/0x798
+[ 753.917532][ T4405] __arm64_sys_rt_sigreturn+0x15d0/0x1990
+[ 753.918229][ T4405] el0_svc_common.constprop.0+0x158/0x530
+[ 753.918921][ T4405] do_el0_svc+0x58/0x148
+[ 753.919594][ T4405] el0_sync_handler+0x1f4/0x200
+[ 753.920423][ T4405] el0_sync+0x174/0x180
diff --git a/pkg/report/testdata/linux/report/531 b/pkg/report/testdata/linux/report/531
new file mode 100644
index 000000000..75271ff05
--- /dev/null
+++ b/pkg/report/testdata/linux/report/531
@@ -0,0 +1,29 @@
+TITLE: WARNING: locking bug in kernel_wait4
+
+[ 483.562491][ T4115] =============================
+[ 483.563138][ T4115] [ BUG: Invalid wait context ]
+[ 483.563925][ T4115] 5.9.0-12994-gf9893351acae #15 Not tainted
+[ 483.564520][ T4115] -----------------------------
+[ 483.565141][ T4115] dhcpcd/4115 is trying to lock:
+[ 483.566013][ T4115] ffff000041e68118 (&mm->mmap_lock){++++}-{3:3}, at: __might_fault+0x108/0x1b0
+[ 483.568509][ T4115] other info that might help us debug this:
+[ 483.569246][ T4115] context-{4:4}
+[ 483.569886][ T4115] 1 lock held by dhcpcd/4115:
+[ 483.570483][ T4115] #0: ffffa00019769560 (rcu_read_lock){....}-{1:2}, at: count_memcg_event_mm+0x24/0x2f0
+[ 483.572502][ T4115] stack backtrace:
+[ 483.573642][ T4115] CPU: 0 PID: 4115 Comm: dhcpcd Not tainted 5.9.0-12994-gf9893351acae #15
+[ 483.574478][ T4115] Hardware name: linux,dummy-virt (DT)
+[ 483.575747][ T4115] Call trace:
+[ 483.576425][ T4115] dump_backtrace+0x0/0x4d0
+[ 483.577101][ T4115] show_stack+0x2c/0x80
+[ 483.577800][ T4115] dump_stack+0x1b0/0x254
+[ 483.578478][ T4115] __lock_acquire+0x1a04/0x4930
+[ 483.579234][ T4115] lock_acquire+0x278/0xb88
+[ 483.579965][ T4115] __might_fault+0x138/0x1b0
+[ 483.580648][ T4115] kernel_wait4+0x174/0x368
+[ 483.581356][ T4115] __do_sys_wait4+0x210/0x2b8
+[ 483.582036][ T4115] __arm64_sys_wait4+0x8c/0xd0
+[ 483.582872][ T4115] el0_svc_common.constprop.0+0x158/0x530
+[ 483.583669][ T4115] do_el0_svc+0x58/0x148
+[ 483.584310][ T4115] el0_sync_handler+0x1f4/0x200
+[ 483.584953][ T4115] el0_sync+0x174/0x180
diff --git a/pkg/report/testdata/linux/report/532 b/pkg/report/testdata/linux/report/532
new file mode 100644
index 000000000..9524db19d
--- /dev/null
+++ b/pkg/report/testdata/linux/report/532
@@ -0,0 +1,20 @@
+TITLE: WARNING: still has locks held in count_memcg_event_mm
+
+[ 826.523990][ T4398] ====================================
+[ 826.525201][ T4398] WARNING: syz-fuzzer/4398 still has locks held!
+[ 826.526227][ T4398] 5.9.0-12994-gf9893351acae #15 Not tainted
+[ 826.527205][ T4398] ------------------------------------
+[ 826.528205][ T4398] 1 lock held by syz-fuzzer/4398:
+[ 826.573908][ T4398] #0: ffffa00019769560 (rcu_read_lock){....}-{1:2}, at: count_memcg_event_mm+0x24/0x2f0
+[ 826.577778][ T4398]
+[ 826.577778][ T4398] stack backtrace:
+[ 826.578731][ T4398] CPU: 1 PID: 4398 Comm: syz-fuzzer Not tainted 5.9.0-12994-gf9893351acae #15
+[ 826.579661][ T4398] Hardware name: linux,dummy-virt (DT)
+[ 826.580250][ T4398] Call trace:
+[ 826.580864][ T4398] dump_backtrace+0x0/0x4d0
+[ 826.581516][ T4398] show_stack+0x2c/0x80
+[ 826.582158][ T4398] dump_stack+0x1b0/0x254
+[ 826.582822][ T4398] debug_check_no_locks_held+0x110/0x130
+[ 826.583509][ T4398] get_signal+0x1a94/0x2400
+[ 826.584037][ T4398] do_notify_resume+0x4e0/0xd50
+[ 826.584568][ T4398] work_pending+0x8/0x34c
diff --git a/pkg/report/testdata/linux/report/533 b/pkg/report/testdata/linux/report/533
new file mode 100644
index 000000000..3633148a2
--- /dev/null
+++ b/pkg/report/testdata/linux/report/533
@@ -0,0 +1,29 @@
+TITLE: WARNING: still has locks held in prepare_bprm_creds
+
+[ 40.588118] ====================================
+[ 40.592858] WARNING: syz-executor286/6054 still has locks held!
+[ 40.599288] 4.20.0-rc5+ #141 Not tainted
+[ 40.603345] ------------------------------------
+[ 40.608177] 1 lock held by syz-executor286/6054:
+[ 40.612959] #0: 000000009ccdb9e0 (&sig->cred_guard_mutex){+.+.}, at: prepare_bprm_creds+0x53/0x120
+[ 40.622176]
+[ 40.622176] stack backtrace:
+[ 40.626781] CPU: 0 PID: 6054 Comm: syz-executor286 Not tainted 4.20.0-rc5+ #141
+[ 40.634221] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
+[ 40.643559] Call Trace:
+[ 40.646140] dump_stack+0x244/0x39d
+[ 40.658840] debug_check_no_locks_held.cold.49+0x93/0x9f
+[ 40.664291] flush_old_exec+0x1ea2/0x2480
+[ 40.753368] load_elf_binary+0xa9a/0x5cf0
+[ 40.778064] search_binary_handler+0x17d/0x570
+[ 40.782638] __do_execve_file.isra.33+0x1661/0x25d0
+[ 40.835388] __x64_sys_execveat+0xed/0x130
+[ 40.839619] do_syscall_64+0x1b9/0x820
+[ 40.878500] entry_SYSCALL_64_after_hwframe+0x49/0xbe
+[ 40.883678] RIP: 0033:0x445789
+[ 40.886862] Code: e8 6c b6 02 00 48 83 c4 18 c3 0f 1f 80 00 00 00 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 0f 83 2b 12 fc ff c3 66 2e 0f 1f 84 00 00 00 00
+[ 40.905750] RSP: 002b:00007f30e3e86db8 EFLAGS: 00000246 ORIG_RAX: 0000000000000142
+[ 40.913446] RAX: ffffffffffffffda RBX: 00000000006dac28 RCX: 0000000000445789
+[ 40.920707] RDX: 0000000000000000 RSI: 0000000020000000 RDI: 0000000000000003
+[ 40.927988] RBP: 00000000006dac20 R08: 0000000000001000 R09: 0000000000000000
+[ 40.935246] R10: 0000000000000
diff --git a/pkg/report/testdata/linux/report/534 b/pkg/report/testdata/linux/report/534
new file mode 100644
index 000000000..88cc63750
--- /dev/null
+++ b/pkg/report/testdata/linux/report/534
@@ -0,0 +1,42 @@
+TITLE: INFO: task hung in register_netdevice_notifier
+TYPE: HANG
+
+[ 610.334229][ T1478] INFO: task syz-fuzzer:4433 blocked for more than 143 seconds.
+[ 610.337281][ T1478] Not tainted 5.9.0-12994-gf9893351acae #15
+[ 610.338689][ T1478] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
+[ 610.361669][ T1478] task:syz-fuzzer state:D stack: 0 pid: 4433 ppid: 4402 flags:0x00000001
+[ 610.364848][ T1478] Call trace:
+[ 610.366182][ T1478] __switch_to+0x210/0x450
+[ 610.367628][ T1478] __schedule+0x894/0x1eb8
+[ 610.368937][ T1478] schedule+0xac/0x228
+[ 610.371513][ T1478] rwsem_down_write_slowpath+0x604/0xc98
+[ 610.373033][ T1478] down_write+0x134/0x1f0
+[ 610.374427][ T1478] register_netdevice_notifier+0x38/0x238
+[ 610.375901][ T1478] bcm_init+0x144/0x1b8
+[ 610.377193][ T1478] can_create+0x244/0x498
+[ 610.378892][ T1478] __sock_create+0x3ec/0x740
+[ 610.401364][ T1478] __sys_socket+0xf0/0x208
+[ 610.403935][ T1478] __arm64_sys_socket+0x70/0xa8
+[ 610.405432][ T1478] el0_svc_common.constprop.0+0x158/0x530
+[ 610.406871][ T1478] do_el0_svc+0x58/0x148
+[ 610.408121][ T1478] el0_sync_handler+0x1f4/0x200
+[ 610.409317][ T1478] el0_sync+0x174/0x180
+[ 610.412964][ T1478]
+[ 610.412964][ T1478] Showing all locks held in the system:
+[ 610.415916][ T1478] 4 locks held by kworker/u8:0/7:
+[ 610.417901][ T1478] 1 lock held by khungtaskd/1478:
+[ 610.419240][ T1478] #0: ffffa00019769560 (rcu_read_lock){....}-{1:2}, at: debug_show_all_locks+0x70/0x258
+[ 610.446034][ T1478] 3 locks held by kworker/3:1/1855:
+[ 610.447236][ T1478] #0: ffff000040020d38 ((wq_completion)events){+.+.}-{0:0}, at: process_one_work+0x76c/0x1af8
+[ 610.472660][ T1478] #1: ffff000040c5fd40 ((work_completion)(&fqdir->destroy_work)){+.+.}-{0:0}, at: process_one_work+0x76c/0x1af8
+[ 610.476736][ T1478] #2: ffffa0001976f170 (rcu_state.barrier_mutex){+.+.}-{3:3}, at: rcu_barrier+0x48/0x528
+[ 610.484255][ T1478] 1 lock held by klogd/4083:
+[ 610.486172][ T1478] 1 lock held by dhcpcd/4135:
+[ 610.487825][ T1478] #0: ffff000049d2c120 (sk_lock-AF_PACKET){+.+.}-{0:0}, at: packet_do_bind+0x48/0xea8
+[ 610.494582][ T1478] 2 locks held by getty/4253:
+[ 610.499360][ T1478] #0: ffff00004aeec098 (&tty->ldisc_sem){++++}-{0:0}, at: ldsem_down_read+0x44/0x58
+[ 610.535135][ T1478] #1: ffffa0001e3fc2e8 (&ldata->atomic_read_lock){+.+.}-{3:3}, at: n_tty_read+0x1d0/0x1bd8
+[ 610.539204][ T1478] 1 lock held by syz-fuzzer/4433:
+[ 610.561088][ T1478] #0: ffffa0001ad1ceb0 (pernet_ops_rwsem){++++}-{3:3}, at: register_netdevice_notifier+0x38/0x238
+[ 610.566582][ T1478]
+[ 610.624513][ T1478] =============================================
diff --git a/pkg/report/testdata/linux/report/535 b/pkg/report/testdata/linux/report/535
new file mode 100644
index 000000000..8e25f4ced
--- /dev/null
+++ b/pkg/report/testdata/linux/report/535
@@ -0,0 +1,152 @@
+TITLE: BUG: soft lockup in ip_list_rcv
+TYPE: HANG
+
+[ 637.311457][ C0] watchdog: BUG: soft lockup - CPU#0 stuck for 22s! [ksoftirqd/0:9]
+[ 637.387608][ C0] Modules linked in:
+[ 637.445248][ C0] irq event stamp: 83253
+[ 637.461076][ C0] hardirqs last enabled at (83252): [<ffffa0001768a558>] _raw_spin_unlock_irqrestore+0xd8/0x110
+[ 637.462474][ C0] hardirqs last disabled at (83253): [<ffffa00010004ac0>] el1_irq+0x80/0x180
+[ 637.463788][ C0] softirqs last enabled at (79846): [<ffffa000100029f4>] _stext+0x9f4/0x1098
+[ 637.465040][ C0] softirqs last disabled at (79849): [<ffffa0001018d560>] irq_exit+0x470/0x540
+[ 637.466599][ C0] CPU: 0 PID: 9 Comm: ksoftirqd/0 Not tainted 5.9.0-12994-gf9893351acae #15
+[ 637.467605][ C0] Hardware name: linux,dummy-virt (DT)
+[ 637.469106][ C0] pstate: 10000005 (nzcV daif -PAN -UAO -TCO BTYPE=--)
+[ 637.470521][ C0] pc : _raw_spin_unlock_irqrestore+0x74/0x110
+[ 637.471589][ C0] lr : _raw_spin_unlock_irqrestore+0xd8/0x110
+[ 637.472533][ C0] sp : ffff00006a238e50
+[ 637.473461][ C0] x29: ffff00006a238e50 x28: ffff000047654508
+[ 637.475049][ C0] x27: 0000000000000002 x26: dfffa00000000000
+[ 637.476402][ C0] x25: 0000000000000002 x24: ffffa0001bf00be0
+[ 637.477749][ C0] x23: ffffa0001c0187d0 x22: ffffa0001b2f2000
+[ 637.479178][ C0] x21: ffffa0001c0187b8 x20: 0000000000000000
+[ 637.480586][ C0] x19: ffffa000127d3e1c x18: ffff00006a247448
+[ 637.481959][ C0] x17: 0000000000000000 x16: 0000000000000000
+[ 637.483293][ C0] x15: 0000000000000001 x14: ffff000040248000
+[ 637.484603][ C0] x13: 0000000000000001 x12: ffff80000d4471b1
+[ 637.485880][ C0] x11: 1fffe0000d4471b0 x10: ffff80000d4471b0
+[ 637.487295][ C0] x9 : dfffa00000000000 x8 : 00000000f3000000
+[ 637.488520][ C0] x7 : 00000000f3f3f3f3 x6 : dfffa00000000000
+[ 637.490022][ C0] x5 : ffff000040248000 x4 : 0000000000000000
+[ 637.491310][ C0] x3 : ffffa0001766a154 x2 : 0000000000000001
+[ 637.492655][ C0] x1 : ffff000040248000 x0 : 0000000000014534
+[ 637.494411][ C0] Call trace:
+[ 637.495455][ C0] _raw_spin_unlock_irqrestore+0x74/0x110
+[ 637.496383][ C0] debug_check_no_obj_freed+0x234/0x438
+[ 637.497375][ C0] slab_free_freelist_hook+0x174/0x1f8
+[ 637.498341][ C0] kmem_cache_free+0xac/0x4f8
+[ 637.499331][ C0] kfree_skbmem+0x1b8/0x1f8
+[ 637.500330][ C0] consume_skb+0x13c/0x680
+[ 637.501265][ C0] __dev_kfree_skb_any+0xb0/0xd0
+[ 637.502164][ C0] napi_consume_skb+0x5f0/0x850
+[ 637.503150][ C0] free_old_xmit_skbs+0xf8/0x258
+[ 637.504026][ C0] start_xmit+0x138/0x1530
+[ 637.504857][ C0] dev_hard_start_xmit+0x204/0xde0
+[ 637.505756][ C0] sch_direct_xmit+0x278/0x488
+[ 637.506639][ C0] __qdisc_run+0x44c/0x1da0
+[ 637.507482][ C0] __dev_queue_xmit+0x2164/0x30d0
+[ 637.508333][ C0] dev_queue_xmit+0x24/0x38
+[ 637.509259][ C0] ip_finish_output2+0x1010/0x2578
+[ 637.510224][ C0] __ip_finish_output+0x58c/0xb20
+[ 637.511121][ C0] ip_finish_output+0x40/0x1f8
+[ 637.512009][ C0] ip_output+0x3a0/0x858
+[ 637.512863][ C0] ip_local_out+0xbc/0x1a8
+[ 637.513693][ C0] __ip_queue_xmit+0x654/0x1698
+[ 637.514552][ C0] ip_queue_xmit+0x5c/0x78
+[ 637.515395][ C0] __tcp_transmit_skb+0x1614/0x3688
+[ 637.516280][ C0] __tcp_send_ack.part.0+0x36c/0x678
+[ 637.517094][ C0] tcp_send_ack+0x8c/0xb0
+[ 637.517957][ C0] __tcp_ack_snd_check+0x13c/0x8d0
+[ 637.518847][ C0] tcp_rcv_established+0x1ae4/0x21a0
+[ 637.519789][ C0] tcp_v4_do_rcv+0x724/0xa78
+[ 637.520701][ C0] tcp_v4_rcv+0x2a68/0x33a0
+[ 637.521607][ C0] ip_protocol_deliver_rcu+0x6c/0x868
+[ 637.522484][ C0] ip_local_deliver_finish+0x1e0/0x350
+[ 637.523374][ C0] ip_local_deliver+0x370/0x4b8
+[ 637.524224][ C0] ip_sublist_rcv_finish+0x12c/0x278
+[ 637.525057][ C0] ip_sublist_rcv+0x48c/0x868
+[ 637.525948][ C0] ip_list_rcv+0x2c4/0x418
+[ 637.526879][ C0] __netif_receive_skb_list_core+0x450/0x740
+[ 637.527837][ C0] netif_receive_skb_list_internal+0x558/0xb20
+[ 637.528779][ C0] gro_normal_list.part.0+0x24/0xb0
+[ 637.529675][ C0] net_rx_action+0xcbc/0x1268
+[ 637.530599][ C0] _stext+0x29c/0x1098
+[ 637.531506][ C0] irq_exit+0x470/0x540
+[ 637.532402][ C0] __handle_domain_irq+0xfc/0x1d0
+[ 637.533350][ C0] gic_handle_irq+0x78/0x230
+[ 637.534194][ C0] el1_irq+0xc0/0x180
+[ 637.534982][ C0] kthread_should_stop+0x8c/0xd0
+[ 637.535900][ C0] smpboot_thread_fn+0xa8/0x928
+[ 637.536734][ C0] kthread+0x30c/0x408
+[ 637.537536][ C0] ret_from_fork+0x10/0x30
+[ 637.539232][ C0] Kernel panic - not syncing: softlockup: hung tasks
+[ 637.540826][ C0] CPU: 0 PID: 9 Comm: ksoftirqd/0 Tainted: G L 5.9.0-12994-gf9893351acae #15
+[ 637.541819][ C0] Hardware name: linux,dummy-virt (DT)
+[ 637.542714][ C0] Call trace:
+[ 637.543595][ C0] dump_backtrace+0x0/0x4d0
+[ 637.544529][ C0] show_stack+0x2c/0x80
+[ 637.545470][ C0] dump_stack+0x1b0/0x254
+[ 637.546328][ C0] panic+0x3d0/0x7fc
+[ 637.547177][ C0] watchdog_timer_fn+0x730/0x740
+[ 637.548094][ C0] __hrtimer_run_queues+0x764/0x1438
+[ 637.550025][ C0] hrtimer_interrupt+0x300/0x718
+[ 637.551013][ C0] arch_timer_handler_virt+0x84/0xb0
+[ 637.552014][ C0] handle_percpu_devid_irq+0x258/0xd88
+[ 637.552973][ C0] generic_handle_irq+0x88/0xb8
+[ 637.553894][ C0] __handle_domain_irq+0xf4/0x1d0
+[ 637.554826][ C0] gic_handle_irq+0x78/0x230
+[ 637.555717][ C0] el1_irq+0xc0/0x180
+[ 637.556596][ C0] _raw_spin_unlock_irqrestore+0x74/0x110
+[ 637.557573][ C0] debug_check_no_obj_freed+0x234/0x438
+[ 637.558456][ C0] slab_free_freelist_hook+0x174/0x1f8
+[ 637.559513][ C0] kmem_cache_free+0xac/0x4f8
+[ 637.560288][ C0] kfree_skbmem+0x1b8/0x1f8
+[ 637.561202][ C0] consume_skb+0x13c/0x680
+[ 637.563062][ C0] __dev_kfree_skb_any+0xb0/0xd0
+[ 637.566086][ C0] napi_consume_skb+0x5f0/0x850
+[ 637.567046][ C0] free_old_xmit_skbs+0xf8/0x258
+[ 637.567907][ C0] start_xmit+0x138/0x1530
+[ 637.568833][ C0] dev_hard_start_xmit+0x204/0xde0
+[ 637.569853][ C0] sch_direct_xmit+0x278/0x488
+[ 637.570768][ C0] __qdisc_run+0x44c/0x1da0
+[ 637.571669][ C0] __dev_queue_xmit+0x2164/0x30d0
+[ 637.572617][ C0] dev_queue_xmit+0x24/0x38
+[ 637.573525][ C0] ip_finish_output2+0x1010/0x2578
+[ 637.574452][ C0] __ip_finish_output+0x58c/0xb20
+[ 637.575341][ C0] ip_finish_output+0x40/0x1f8
+[ 637.576161][ C0] ip_output+0x3a0/0x858
+[ 637.576975][ C0] ip_local_out+0xbc/0x1a8
+[ 637.577844][ C0] __ip_queue_xmit+0x654/0x1698
+[ 637.578693][ C0] ip_queue_xmit+0x5c/0x78
+[ 637.579566][ C0] __tcp_transmit_skb+0x1614/0x3688
+[ 637.580511][ C0] __tcp_send_ack.part.0+0x36c/0x678
+[ 637.581498][ C0] tcp_send_ack+0x8c/0xb0
+[ 637.582375][ C0] __tcp_ack_snd_check+0x13c/0x8d0
+[ 637.583294][ C0] tcp_rcv_established+0x1ae4/0x21a0
+[ 637.584205][ C0] tcp_v4_do_rcv+0x724/0xa78
+[ 637.585056][ C0] tcp_v4_rcv+0x2a68/0x33a0
+[ 637.585944][ C0] ip_protocol_deliver_rcu+0x6c/0x868
+[ 637.586822][ C0] ip_local_deliver_finish+0x1e0/0x350
+[ 637.587652][ C0] ip_local_deliver+0x370/0x4b8
+[ 637.588510][ C0] ip_sublist_rcv_finish+0x12c/0x278
+[ 637.589454][ C0] ip_sublist_rcv+0x48c/0x868
+[ 637.590367][ C0] ip_list_rcv+0x2c4/0x418
+[ 637.591283][ C0] __netif_receive_skb_list_core+0x450/0x740
+[ 637.592286][ C0] netif_receive_skb_list_internal+0x558/0xb20
+[ 637.593232][ C0] gro_normal_list.part.0+0x24/0xb0
+[ 637.594205][ C0] net_rx_action+0xcbc/0x1268
+[ 637.595038][ C0] _stext+0x29c/0x1098
+[ 637.595868][ C0] irq_exit+0x470/0x540
+[ 637.596711][ C0] __handle_domain_irq+0xfc/0x1d0
+[ 637.597612][ C0] gic_handle_irq+0x78/0x230
+[ 637.598500][ C0] el1_irq+0xc0/0x180
+[ 637.599405][ C0] kthread_should_stop+0x8c/0xd0
+[ 637.600327][ C0] smpboot_thread_fn+0xa8/0x928
+[ 637.601202][ C0] kthread+0x30c/0x408
+[ 637.602055][ C0] ret_from_fork+0x10/0x30
+[ 637.605644][ C0] SMP: stopping secondary CPUs
+[ 637.609367][ C0] Dumping ftrace buffer:
+[ 637.613724][ C0] (ftrace buffer empty)
+[ 637.615902][ C0] Kernel Offset: disabled
+[ 637.617623][ C0] CPU features: 0x0240022,61002082
+[ 637.618754][ C0] Memory Limit: none
+[ 637.621412][ C0] Rebooting in 1 seconds..
diff --git a/pkg/report/testdata/linux/report/536 b/pkg/report/testdata/linux/report/536
new file mode 100644
index 000000000..503d80dd2
--- /dev/null
+++ b/pkg/report/testdata/linux/report/536
@@ -0,0 +1,53 @@
+TITLE: BUG: unable to handle kernel paging request in selinux_socket_sendmsg
+
+[ 1418.056449][ T6604] Unable to handle kernel paging request at virtual address dfffa00000000003
+[ 1418.057778][ T6604] Mem abort info:
+[ 1418.060540][ T4436] vhci_hcd: disconnect device
+[ 1418.064939][ T4436] vhci_hcd: stop threads
+[ 1418.065447][ T4436] vhci_hcd: release socket
+[ 1418.066582][ T4436] vhci_hcd: disconnect device
+[ 1418.072814][ T4436] vhci_hcd: stop threads
+[ 1418.073388][ T4436] vhci_hcd: release socket
+[ 1418.074818][ T4436] vhci_hcd: disconnect device
+[ 1418.090728][ T6604] ESR = 0x96000004
+[ 1418.091860][ T6604] EC = 0x25: DABT (current EL), IL = 32 bits
+[ 1418.092617][ T6604] SET = 0, FnV = 0
+[ 1418.093198][ T6604] EA = 0, S1PTW = 0
+[ 1418.093747][ T6604] Data abort info:
+[ 1418.094338][ T6604] ISV = 0, ISS = 0x00000004
+[ 1418.095159][ T6604] CM = 0, WnR = 0
+[ 1418.095945][ T6604] [dfffa00000000003] address between user and kernel address ranges
+[ 1418.097299][ T6604] Internal error: Oops: 96000004 [#1] PREEMPT SMP
+[ 1418.098357][ T6604] Modules linked in:
+[ 1418.099914][ T6604] CPU: 0 PID: 6604 Comm: vhci_tx Not tainted 5.9.0-12994-gf9893351acae #16
+[ 1418.100971][ T6604] Hardware name: linux,dummy-virt (DT)
+[ 1418.102283][ T6604] pstate: 80000005 (Nzcv daif -PAN -UAO -TCO BTYPE=--)
+[ 1418.103355][ T6604] pc : selinux_socket_sendmsg+0x28/0x58
+[ 1418.104161][ T6604] lr : selinux_socket_sendmsg+0x18/0x58
+[ 1418.104870][ T6604] sp : ffff000049b6fa10
+[ 1418.105700][ T6604] x29: ffff000049b6fa10 x28: ffff0000467c42a0
+[ 1418.106910][ T6604] x27: ffff000045138700 x26: ffff000049b6fc50
+[ 1418.108225][ T6604] x25: 0000000000000001 x24: 0000000000000000
+[ 1418.109389][ T6604] x23: ffff000049b6fc50 x22: 0000000000000030
+[ 1418.110629][ T6604] x21: dfffa00000000000 x20: 0000000000000000
+[ 1418.111540][ T6604] x19: 0000000000000000 x18: 1fffe0000d4d8e30
+[ 1418.112679][ T6604] x17: 0000000000000000 x16: 0000000000000000
+[ 1418.113664][ T6604] x15: 0000000000000001 x14: 0080000000000000
+[ 1418.115642][ T6604] x13: 0000000000000004 x12: ffffa00019a35810
+[ 1418.117770][ T6604] x11: ffffa00013f1867c x10: ffffa0001723e970
+[ 1418.118916][ T6604] x9 : 0000000000000004 x8 : 1fffe0000936df9a
+[ 1418.119980][ T6604] x7 : 1fffe0000936df9b x6 : 0000000000000001
+[ 1418.121038][ T6604] x5 : ffff00004363af40 x4 : 0000000000000000
+[ 1418.123366][ T6604] x3 : ffffa00011d6e5a0 x2 : 0000000000000003
+[ 1418.124768][ T6604] x1 : dfffa00000000000 x0 : 0000000000000018
+[ 1418.128340][ T6604] Call trace:
+[ 1418.129242][ T6604] selinux_socket_sendmsg+0x28/0x58
+[ 1418.132314][ T6604] security_socket_sendmsg+0x68/0xd0
+[ 1418.133085][ T6604] sock_sendmsg+0x4c/0x128
+[ 1418.133754][ T6604] kernel_sendmsg+0x54/0x70
+[ 1418.134448][ T6604] vhci_send_cmd_submit+0x6c8/0xda8
+[ 1418.135141][ T6604] vhci_tx_loop+0xe8/0x300
+[ 1418.135800][ T6604] kthread+0x344/0x3e0
+[ 1418.136434][ T6604] ret_from_fork+0x10/0x30
+[ 1418.138100][ T6604] Code: 91006260 d2d40001 f2fbffe1 d343fc02 (38e16841)
+[ 1418.139739][ T6604] ---[ end trace bfc0c3bff103ed46 ]---