aboutsummaryrefslogtreecommitdiffstats
path: root/pkg
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2018-02-07 09:41:12 +0100
committerDmitry Vyukov <dvyukov@google.com>2018-02-07 09:41:12 +0100
commitf34079dbcf82bb019d7bd1845be743d6dbc4748d (patch)
treeaa3bbe3291d1ffdffe75cbc0f63a8b07ddae2aaf /pkg
parent66c15deb7ae082fbf5f24e0bc47013458ddf8855 (diff)
pkg/report: detect when several reports are intermixed
If there are more than one report, detect where the second report starts and extract description only from the first report. There are too many cases where several reports gets intermixed and as the result we extract bogus description.
Diffstat (limited to 'pkg')
-rw-r--r--pkg/report/linux.go47
-rw-r--r--pkg/report/testdata/linux/report/1544
-rw-r--r--pkg/report/testdata/linux/report/1804
-rw-r--r--pkg/report/testdata/linux/report/197107
-rw-r--r--pkg/report/testdata/linux/report/198436
-rw-r--r--pkg/report/testdata/linux/report/199164
-rw-r--r--pkg/report/testdata/linux/report/200217
-rw-r--r--pkg/report/testdata/linux/report/201115
-rw-r--r--pkg/report/testdata/linux/report/573
9 files changed, 1082 insertions, 15 deletions
diff --git a/pkg/report/linux.go b/pkg/report/linux.go
index ef7b8ac5c..833828ee8 100644
--- a/pkg/report/linux.go
+++ b/pkg/report/linux.go
@@ -27,6 +27,7 @@ type linux struct {
consoleOutputRe *regexp.Regexp
questionableRe *regexp.Regexp
guiltyFileBlacklist []*regexp.Regexp
+ reportStartIgnores [][]byte
eoi []byte
}
@@ -78,6 +79,11 @@ func ctorLinux(kernelSrc, kernelObj string, symbols map[string][]symbolizer.Symb
regexp.MustCompile(`^net/core/skbuff.c`),
regexp.MustCompile(`^fs/proc/generic.c`),
}
+ // These pattern do _not_ start a new report, i.e. can be in a middle of another report.
+ ctx.reportStartIgnores = [][]byte{
+ []byte("invalid opcode: 0000"),
+ []byte("Kernel panic - not syncing: panic_on_warn set"),
+ }
return ctx, nil
}
@@ -94,6 +100,8 @@ func (ctx *linux) Parse(output []byte) *Report {
var consoleReportPrefix [][]byte
var consoleReport []byte
textLines := 0
+ firstReportEnd := 0
+ secondReportPos := 0
skipText := false
for pos := 0; pos < len(output); {
next := bytes.IndexByte(output[pos:], '\n')
@@ -102,8 +110,9 @@ func (ctx *linux) Parse(output []byte) *Report {
} else {
next = len(output)
}
+ line := output[pos:next]
for _, oops1 := range linuxOopses {
- match := matchOops(output[pos:next], oops1, ctx.ignores)
+ match := matchOops(line, oops1, ctx.ignores)
if match == -1 {
continue
}
@@ -111,25 +120,36 @@ func (ctx *linux) Parse(output []byte) *Report {
oops = oops1
rep.StartPos = pos
rep.Title = string(output[pos+match : next])
+ } else if secondReportPos == 0 {
+ ignored := false
+ for _, ignore := range ctx.reportStartIgnores {
+ if bytes.Contains(line, ignore) {
+ ignored = true
+ break
+ }
+ }
+ if !ignored {
+ secondReportPos = pos
+ }
}
rep.EndPos = next
}
if oops == nil {
- logReportPrefix = append(logReportPrefix, append([]byte{}, output[pos:next]...))
+ logReportPrefix = append(logReportPrefix, append([]byte{}, line...))
if len(logReportPrefix) > 5 {
logReportPrefix = logReportPrefix[1:]
}
}
- if ctx.consoleOutputRe.Match(output[pos:next]) &&
- (!ctx.questionableRe.Match(output[pos:next]) ||
- bytes.Index(output[pos:next], ctx.eoi) != -1) {
- lineStart := bytes.Index(output[pos:next], []byte("] ")) + pos + 2
+ if ctx.consoleOutputRe.Match(line) &&
+ (!ctx.questionableRe.Match(line) || bytes.Index(line, ctx.eoi) != -1) {
+ lineStart := bytes.Index(line, []byte("] ")) + pos + 2
lineEnd := next
if lineEnd != 0 && output[lineEnd-1] == '\r' {
lineEnd--
}
if oops == nil {
- consoleReportPrefix = append(consoleReportPrefix, append([]byte{}, output[lineStart:lineEnd]...))
+ consoleReportPrefix = append(consoleReportPrefix,
+ append([]byte{}, output[lineStart:lineEnd]...))
if len(consoleReportPrefix) > 5 {
consoleReportPrefix = consoleReportPrefix[1:]
}
@@ -139,7 +159,8 @@ func (ctx *linux) Parse(output []byte) *Report {
skipLine := skipText
if bytes.Contains(ln, []byte("Disabling lock debugging due to kernel taint")) {
skipLine = true
- } else if textLines > 40 && bytes.Contains(ln, []byte("Kernel panic - not syncing")) {
+ } else if textLines > 40 &&
+ bytes.Contains(ln, []byte("Kernel panic - not syncing")) {
// If panic_on_warn set, then we frequently have 2 stacks:
// one for the actual report (or maybe even more than one),
// and then one for panic caused by panic_on_warn. This makes
@@ -155,6 +176,9 @@ func (ctx *linux) Parse(output []byte) *Report {
if !skipLine {
consoleReport = append(consoleReport, ln...)
consoleReport = append(consoleReport, '\n')
+ if secondReportPos == 0 {
+ firstReportEnd = len(consoleReport)
+ }
}
}
}
@@ -163,17 +187,20 @@ func (ctx *linux) Parse(output []byte) *Report {
if oops == nil {
return nil
}
+ if secondReportPos == 0 {
+ secondReportPos = len(output)
+ }
var report []byte
var reportPrefix [][]byte
// Try extracting report from console output only.
- title, corrupted, format := extractDescription(consoleReport, oops, linuxStackParams)
+ title, corrupted, format := extractDescription(consoleReport[:firstReportEnd], oops, linuxStackParams)
if title != "" {
// Success.
report = consoleReport
reportPrefix = consoleReportPrefix
} else {
// Failure. Try extracting report from the whole log.
- report = output[rep.StartPos:]
+ report = output[rep.StartPos:secondReportPos]
reportPrefix = logReportPrefix
title, corrupted, format = extractDescription(report, oops, linuxStackParams)
if title == "" {
diff --git a/pkg/report/testdata/linux/report/154 b/pkg/report/testdata/linux/report/154
index 084df8f38..0621018ea 100644
--- a/pkg/report/testdata/linux/report/154
+++ b/pkg/report/testdata/linux/report/154
@@ -1,5 +1,5 @@
-# TODO: must be corrupted (report in report)
-TITLE: BUG: unable to handle kernel paging request in rb_first_postorder
+TITLE: BUG: unable to handle kernel
+CORRUPTED: Y
[ 85.149573] BUG: unable to handle kernel paging request at ffffffff0001eea6
[ 85.153038] ==================================================================
diff --git a/pkg/report/testdata/linux/report/180 b/pkg/report/testdata/linux/report/180
index 54d08728c..0621018ea 100644
--- a/pkg/report/testdata/linux/report/180
+++ b/pkg/report/testdata/linux/report/180
@@ -1,5 +1,5 @@
-# TODO: must be corrupted (report in report).
-TITLE: BUG: unable to handle kernel paging request in rb_first_postorder
+TITLE: BUG: unable to handle kernel
+CORRUPTED: Y
[ 85.149573] BUG: unable to handle kernel paging request at ffffffff0001eea6
[ 85.153038] ==================================================================
diff --git a/pkg/report/testdata/linux/report/197 b/pkg/report/testdata/linux/report/197
new file mode 100644
index 000000000..150ef6edb
--- /dev/null
+++ b/pkg/report/testdata/linux/report/197
@@ -0,0 +1,107 @@
+TITLE: KASAN: global-out-of-bounds Read in show_timer
+CORRUPTED: Y
+
+[ 66.768767] ==================================================================
+[ 66.776196] BUG: KASAN: global-out-of-bounds in show_timer+0x27a/0x2b0 at addr ffffffff82cda558
+[ 66.785026] Read of size 8 by task syz-executor7/8685
+[ 66.790216] Address belongs to variable nstr.37854+0x18/0x40
+[ 66.796010] CPU: 0 PID: 8685 Comm: syz-executor7 Not tainted 4.4.114+ #250
+[ 66.803009] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
+[ 66.807266] kasan: CONFIG_KASAN_INLINE enabled
+[ 66.807275] kasan: GPF could be caused by NULL-ptr deref or user memory access
+[ 66.807279] general protection fault: 0000 [#1] SMP KASAN
+[ 66.807284] Dumping ftrace buffer:
+[ 66.807288] (ftrace buffer empty)
+[ 66.807291] Modules linked in:
+[ 66.807299] CPU: 1 PID: 8694 Comm: syz-executor3 Not tainted 4.4.114+ #250
+[ 66.807304] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
+[ 66.807311] task: ffff8800b9c69780 ti: ffff8800b7bb8000 task.ti: ffff8800b7bb8000
+[ 66.807335] RIP: 0010:[<ffffffff8268adb6>] [<ffffffff8268adb6>] udp_queue_rcv_skb+0x196/0x1590
+[ 66.807338] RSP: 0018:ffff8800b7bbf928 EFLAGS: 00010206
+[ 66.807343] RAX: dffffc0000000000 RBX: ffff8800ba440000 RCX: ffffc90003b90000
+[ 66.807347] RDX: 000000000000000c RSI: ffff8801cd8b2900 RDI: 0000000000000060
+[ 66.807351] RBP: ffff8800b7bbf968 R08: 0000000000000001 R09: 0000000000000001
+[ 66.807355] R10: 0000000000000000 R11: 1ffff10016f77efa R12: ffff8801cd8b2900
+[ 66.807359] R13: 0000000000000001 R14: 0000000000000000 R15: ffff8801cd8b2958
+[ 66.807365] FS: 00007fc9a056d700(0000) GS:ffff8801db700000(0000) knlGS:0000000000000000
+[ 66.807370] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
+[ 66.807375] CR2: 000000002082dff0 CR3: 00000000b1580000 CR4: 0000000000160630
+[ 66.807383] DR0: 0000000020000000 DR1: 0000000020000000 DR2: 0000000000000000
+[ 66.807388] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000600
+[ 66.807389] Stack:
+[ 66.807399] ffff8800ba440088 ffff880000000001 ffff8800ba440088 dffffc0000000000
+[ 66.807408] ffff8800ba440000 0000000000000000 ffffed0017488083 ffff8801cd8b2900
+[ 66.807418] ffff8800b7bbf9d8 ffffffff822092d5 ffff8800ba440188 ffff8800ba440190
+[ 66.807419] Call Trace:
+[ 66.807429] [<ffffffff822092d5>] release_sock+0x165/0x540
+[ 66.807437] [<ffffffff826844df>] udp_sendmsg+0x15df/0x1c40
+[ 66.807447] [<ffffffff811efdee>] ? __lock_acquire+0xabe/0x4eb0
+[ 66.807454] [<ffffffff82680e70>] ? udp_push_pending_frames+0xe0/0xe0
+[ 66.807462] [<ffffffff811ef330>] ? debug_check_no_locks_freed+0x2c0/0x2c0
+[ 66.807469] [<ffffffff82682f00>] ? udp_seq_next+0x80/0x80
+[ 66.807478] [<ffffffff811ef330>] ? debug_check_no_locks_freed+0x2c0/0x2c0
+[ 66.807486] [<ffffffff811e61d0>] ? zap_class+0x390/0x390
+[ 66.807494] [<ffffffff811e8241>] ? __lock_is_held+0xa1/0xf0
+[ 66.807502] [<ffffffff826b8a58>] ? inet_sendmsg+0x208/0x4c0
+[ 66.807508] [<ffffffff826b8b15>] inet_sendmsg+0x2c5/0x4c0
+[ 66.807515] [<ffffffff826b88c8>] ? inet_sendmsg+0x78/0x4c0
+[ 66.807521] [<ffffffff826b8850>] ? inet_recvmsg+0x4b0/0x4b0
+[ 66.807529] [<ffffffff821fcb2f>] sock_sendmsg+0xcf/0x110
+[ 66.807535] [<ffffffff821fda60>] SYSC_sendto+0x2e0/0x360
+[ 66.807543] [<ffffffff821fd780>] ? SYSC_connect+0x310/0x310
+[ 66.807551] [<ffffffff811c61fe>] ? pick_next_task_fair+0x105e/0x1b40
+[ 66.807558] [<ffffffff811e61d0>] ? zap_class+0x390/0x390
+[ 66.807568] [<ffffffff82a1611c>] ? _raw_spin_unlock_irq+0x2c/0x40
+[ 66.807576] [<ffffffff811eeb5b>] ? trace_hardirqs_on_caller+0x38b/0x590
+[ 66.807584] [<ffffffff82a02785>] ? __schedule+0xab5/0x1c40
+[ 66.807591] [<ffffffff81284a8d>] ? SyS_futex+0x20d/0x2b0
+[ 66.807600] [<ffffffff82a16cce>] ? int_ret_from_sys_call+0x52/0xa3
+[ 66.807608] [<ffffffff82200025>] SyS_sendto+0x45/0x60
+[ 66.807616] [<ffffffff82a16b1b>] entry_SYSCALL_64_fastpath+0x18/0x94
+[ 66.807698] Code: 74 24 58 41 f6 c6 01 0f 85 7f 08 00 00 49 83 e6 fe e8 3f b1 c7 fe 49 8d 7e 60 48 b8 00 00 00 00 00 fc ff df 48 89 fa 48 c1 ea 03 <0f> b6 04 02 84 c0 74 08 3c 01 0f 8e 4c 0c 00 00 41 f6 46 60 04
+[ 66.807706] RIP [<ffffffff8268adb6>] udp_queue_rcv_skb+0x196/0x1590
+[ 66.807708] RSP <ffff8800b7bbf928>
+[ 66.807727] ---[ end trace 4bc40108dd6f901f ]---
+[ 66.807733] Kernel panic - not syncing: Fatal exception in interrupt
+[ 67.166273] 0000000000000000 ffff8800b6c7f9f8 ffffffff81cac64d fffffbfff059b4ab
+[ 67.174269] fffffbfff059b4ab 0000000000000008 0000000000000000 ffffffff82cda558
+[ 67.182263] ffff8800b6c7fa80 ffffffff814d588d ffff8800b6c7faa0 ffff8800b6c7fa40
+[ 67.190259] Call Trace:
+[ 67.192832] [<ffffffff81cac64d>] dump_stack+0xc1/0x124
+[ 67.198179] [<ffffffff814d588d>] kasan_report.part.2+0x44d/0x540
+[ 67.204391] [<ffffffff8166b87a>] ? show_timer+0x27a/0x2b0
+[ 67.209998] [<ffffffff811159c0>] ? __lock_task_sighand+0x170/0x470
+[ 67.216383] [<ffffffff814d5a3e>] __asan_report_load8_noabort+0x2e/0x30
+[ 67.223115] [<ffffffff8166b87a>] show_timer+0x27a/0x2b0
+[ 67.228545] [<ffffffff8166bac1>] ? timers_start+0x151/0x1d0
+[ 67.234325] [<ffffffff81581e3c>] seq_read+0x32c/0x1240
+[ 67.239671] [<ffffffff81581b10>] ? seq_lseek+0x3c0/0x3c0
+[ 67.245188] [<ffffffff815e3c4d>] ? fsnotify+0x59d/0xec0
+[ 67.250612] [<ffffffff815e4570>] ? fsnotify+0xec0/0xec0
+[ 67.256040] [<ffffffff81510656>] do_loop_readv_writev+0x146/0x1e0
+[ 67.262337] [<ffffffff81b4cabe>] ? security_file_permission+0x8e/0x1e0
+[ 67.269067] [<ffffffff81581b10>] ? seq_lseek+0x3c0/0x3c0
+[ 67.274581] [<ffffffff81581b10>] ? seq_lseek+0x3c0/0x3c0
+[ 67.280094] [<ffffffff81512954>] do_readv_writev+0x5d4/0x6d0
+[ 67.285953] [<ffffffff81512380>] ? vfs_write+0x530/0x530
+[ 67.291470] [<ffffffff811e8241>] ? __lock_is_held+0xa1/0xf0
+[ 67.297241] [<ffffffff8156c152>] ? __fget+0x212/0x3b0
+[ 67.302491] [<ffffffff8156c17b>] ? __fget+0x23b/0x3b0
+[ 67.307742] [<ffffffff8156bf8c>] ? __fget+0x4c/0x3b0
+[ 67.312909] [<ffffffff81512acd>] vfs_readv+0x7d/0xb0
+[ 67.318074] [<ffffffff815152eb>] SyS_preadv+0x18b/0x220
+[ 67.323498] [<ffffffff81515160>] ? SyS_writev+0x230/0x230
+[ 67.329099] [<ffffffff81002284>] ? lockdep_sys_exit_thunk+0x12/0x14
+[ 67.335570] [<ffffffff82a16b1b>] entry_SYSCALL_64_fastpath+0x18/0x94
+[ 67.342119] Memory state around the buggy address:
+[ 67.347022] ffffffff82cda400: 05 fa fa fa fa fa fa fa 00 04 fa fa fa fa fa fa
+[ 67.354352] ffffffff82cda480: 07 fa fa fa fa fa fa fa 05 fa fa fa fa fa fa fa
+[ 67.361682] >ffffffff82cda500: 07 fa fa fa fa fa fa fa 00 00 00 fa fa fa fa fa
+[ 67.369010] ^
+[ 67.375211] ffffffff82cda580: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+[ 67.382542] ffffffff82cda600: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+[ 67.389870] ==================================================================
+[ 67.397650] Dumping ftrace buffer:
+[ 67.401175] (ftrace buffer empty)
+[ 67.405471] Kernel Offset: disabled
+[ 67.409078] Rebooting in 86400 seconds..
diff --git a/pkg/report/testdata/linux/report/198 b/pkg/report/testdata/linux/report/198
new file mode 100644
index 000000000..7c3f1e568
--- /dev/null
+++ b/pkg/report/testdata/linux/report/198
@@ -0,0 +1,436 @@
+# TODO: must be "in ip6t_do_table"
+TITLE: general protection fault in __vmalloc_node_range
+
+[ 159.247590] syz-executor6: vmalloc: allocation failure: 8589934588 bytes, mode:0x14080c0(GFP_KERNEL|__GFP_ZERO), nodemask=(null)
+[ 159.259380] syz-executor6 cpuset=/ mems_allowed=0
+[ 159.264410] CPU: 1 PID: 30482 Comm: syz-executor6 Not tainted 4.15.0+ #221
+[ 159.271770] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
+[ 159.281117] Call Trace:
+[ 159.281983] kasan: CONFIG_KASAN_INLINE enabled
+[ 159.283703] dump_stack+0x194/0x257
+[ 159.283722] ? arch_local_irq_restore+0x53/0x53
+[ 159.283733] ? idr_get_free_cmn+0xfd0/0xfd0
+[ 159.283746] ? debug_check_no_locks_freed+0x3c0/0x3c0
+[ 159.283769] warn_alloc+0x19a/0x2b0
+[ 159.288433] kasan: GPF could be caused by NULL-ptr deref or user memory access
+[ 159.292028] ? zone_watermark_ok_safe+0x400/0x400
+[ 159.292043] ? __kernel_text_address+0xd/0x40
+[ 159.296699] general protection fault: 0000 [#1] SMP KASAN
+[ 159.300979] ? unwind_get_return_address+0x61/0xa0
+[ 159.306129] Dumping ftrace buffer:
+[ 159.309736] ? depot_save_stack+0x12c/0x490
+[ 159.317051] (ftrace buffer empty)
+[ 159.321870] __vmalloc_node_range+0x4f0/0x650
+[ 159.326325] Modules linked in:
+[ 159.331834] ? save_stack+0x43/0xd0
+[ 159.340236] ? kasan_kmalloc+0xad/0xe0
+[ 159.344522] CPU: 0 PID: 30477 Comm: syz-executor4 Not tainted 4.15.0+ #221
+[ 159.348202] ? __kmalloc_node+0x47/0x70
+[ 159.352661] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
+[ 159.355824] ? kvmalloc_node+0x99/0xd0
+[ 159.359421] RIP: 0010:ip6t_do_table+0x132d/0x1a30
+[ 159.363272] ? xt_alloc_table_info+0x63/0xe0
+[ 159.370248] RSP: 0018:ffff8801db406c20 EFLAGS: 00010246
+[ 159.374194] ? xt_alloc_entry_offsets+0x21/0x30
+[ 159.387872] __vmalloc_node_flags_caller+0x50/0x60
+[ 159.392674] RAX: 0000000000000000 RBX: ffff8801b0c29b80 RCX: ffffffff84db22a1
+[ 159.397051] ? xt_alloc_entry_offsets+0x21/0x30
+[ 159.402378] RDX: 0000000000000100 RSI: 0000000000000000 RDI: ffff8801b0c29cde
+[ 159.407019] kvmalloc_node+0x82/0xd0
+[ 159.411915] RBP: ffff8801db406e68 R08: ffff8801db406f60 R09: 0000000000000002
+[ 159.419159] xt_alloc_entry_offsets+0x21/0x30
+[ 159.423789] R10: 00000000000000d0 R11: 0000000000000020 R12: 0000000000000001
+[ 159.423795] R13: 0000000000000000 R14: dffffc0000000000 R15: ffff8801b0c29c50
+[ 159.431037] translate_table+0x2e0/0x1dd0
+[ 159.434715] FS: 00007ff199438700(0000) GS:ffff8801db400000(0000) knlGS:0000000000000000
+[ 159.441966] ? lock_downgrade+0x980/0x980
+[ 159.446416] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
+[ 159.453657] ? __kmalloc_node+0x33/0x70
+[ 159.460895] CR2: 0000001b9bc22000 CR3: 00000001b1d23002 CR4: 00000000001606f0
+[ 159.465017] ? alloc_counters.isra.11+0x7e0/0x7e0
+[ 159.473207] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
+[ 159.477325] ? trace_event_raw_event_sched_switch+0x800/0x800
+[ 159.483170] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
+[ 159.487112] ? __check_object_size+0x8b/0x530
+[ 159.494346] Call Trace:
+[ 159.499165] ? __might_sleep+0x95/0x190
+[ 159.506396] <IRQ>
+[ 159.512258] ? kasan_check_write+0x14/0x20
+[ 159.519518] ? ip6t_error+0x60/0x60
+[ 159.523960] ? _copy_from_user+0x99/0x110
+[ 159.526512] ? check_noncircular+0x20/0x20
+[ 159.530455] do_arpt_set_ctl+0x394/0x8d0
+[ 159.532572] ? __update_load_avg_se.isra.27+0x56a/0x7c0
+[ 159.536777] ? module_unload_free+0x5b0/0x5b0
+[ 159.540369] ? check_noncircular+0x20/0x20
+[ 159.544488] ? compat_do_arpt_set_ctl+0xb90/0xb90
+[ 159.548686] ? lock_acquire+0x1d5/0x580
+[ 159.552718] ? schedule+0xf5/0x430
+[ 159.558044] ? nf_ct_frag6_gather+0x1d9/0x3ad0
+[ 159.562514] ? mutex_unlock+0xd/0x10
+[ 159.566711] ? lock_acquire+0x1d5/0x580
+[ 159.571520] ? nf_sockopt_find.constprop.0+0x1a7/0x220
+[ 159.575464] ? ip6_input+0x11f/0x560
+[ 159.578973] nf_setsockopt+0x67/0xc0
+[ 159.583524] ? lock_release+0xa40/0xa40
+[ 159.587204] ip_setsockopt+0x97/0xa0
+[ 159.591145] ip6table_security_hook+0x65/0x80
+[ 159.596389] tcp_setsockopt+0x82/0xd0
+[ 159.600072] nf_hook_slow+0xba/0x1a0
+[ 159.603761] sock_common_setsockopt+0x95/0xd0
+[ 159.607704] ip6_input+0x35c/0x560
+[ 159.611388] SyS_setsockopt+0x189/0x360
+[ 159.615854] ? ip6_input_finish+0x17a0/0x17a0
+[ 159.619626] ? SyS_recv+0x40/0x40
+[ 159.623306] ? find_held_lock+0x35/0x1d0
+[ 159.627768] ? entry_SYSCALL_64_fastpath+0x5/0xa0
+[ 159.631275] ? ip6_make_skb+0x5e0/0x5e0
+[ 159.635217] ? trace_hardirqs_on_caller+0x421/0x5c0
+[ 159.639680] ? ipv6_rcv+0x16cd/0x1fa0
+[ 159.643101] ? trace_hardirqs_on_thunk+0x1a/0x1c
+[ 159.647130] ip6_rcv_finish+0x297/0x8c0
+[ 159.651943] entry_SYSCALL_64_fastpath+0x29/0xa0
+[ 159.655879] ? ip6_input+0x560/0x560
+[ 159.660860] RIP: 0033:0x453299
+[ 159.664632] ? ipv6_defrag+0x1fa/0x2f0
+[ 159.669353] RSP: 002b:00007f921c989c58 EFLAGS: 00000212
+[ 159.673300] ? nf_hook_slow+0xd3/0x1a0
+[ 159.678015] ORIG_RAX: 0000000000000036
+[ 159.681701] ipv6_rcv+0xf37/0x1fa0
+[ 159.684858] RAX: ffffffffffffffda RBX: 000000000071bea0 RCX: 0000000000453299
+[ 159.688722] ? ip6_rcv_finish+0x8c0/0x8c0
+[ 159.694046] RDX: 0000000000000060 RSI: 0000000000000000 RDI: 0000000000000013
+[ 159.697901] ? print_irqtrace_events+0x270/0x270
+[ 159.701837] RBP: 00000000000000cd R08: 0000000000000000 R09: 0000000000000000
+[ 159.701843] R10: 0000000020000000 R11: 0000000000000212 R12: 00000000006f03d8
+[ 159.705353] ? task_numa_find_cpu+0x1e30/0x1e30
+[ 159.712591] R13: 00000000ffffffff R14: 00007f921c98a6d4 R15: 0000000000000000
+[ 159.716709] ? rb_insert_color+0x1580/0x1580
+[ 159.724026] Mem-Info:
+[ 159.728673] ? __lock_is_held+0xb6/0x140
+[ 159.728690] ? ip6_input+0x560/0x560
+[ 159.735946] active_anon:60328 inactive_anon:64 isolated_anon:0
+[ 159.735946] active_file:3523 inactive_file:8485 isolated_file:0
+[ 159.735946] unevictable:0 dirty:74 writeback:0 unstable:0
+[ 159.735946] slab_reclaimable:8928 slab_unreclaimable:84120
+[ 159.735946] mapped:24203 shmem:70 pagetables:703 bounce:0
+[ 159.735946] free:1436134 free_pcp:424 free_cma:0
+[ 159.743178] ? ip6_rcv_finish+0x8c0/0x8c0
+[ 159.743189] __netif_receive_skb_core+0x1a41/0x3460
+[ 159.747838] Node 0 active_anon:241312kB inactive_anon:256kB active_file:14092kB inactive_file:33940kB unevictable:0kB isolated(anon):0kB isolated(file):0kB mapped:96812kB dirty:296kB writeback:0kB shmem:280kB shmem_thp: 0kB shmem_pmdmapped: 0kB anon_thp: 165888kB writeback_tmp:0kB unstable:0kB all_unreclaimable? no
+[ 159.755062] ? find_held_lock+0x35/0x1d0
+[ 159.755077] ? nf_ingress+0x9f0/0x9f0
+[ 159.759453] Node 0
+[ 159.761842] ? debug_check_no_locks_freed+0x3c0/0x3c0
+[ 159.765882] DMA free:15908kB min:164kB low:204kB high:244kB active_anon:0kB inactive_anon:0kB active_file:0kB inactive_file:0kB unevictable:0kB writepending:0kB present:15992kB managed:15908kB mlocked:0kB kernel_stack:0kB pagetables:0kB bounce:0kB free_pcp:0kB local_pcp:0kB free_cma:0kB
+[ 159.769550] ? check_noncircular+0x20/0x20
+[ 159.769568] ? __lock_acquire+0x664/0x3e00
+[ 159.802679] lowmem_reserve[]:
+[ 159.806791] ? numa_migrate_preferred+0x250/0x250
+[ 159.806800] ? _find_next_bit+0xee/0x120
+[ 159.811783] 0
+[ 159.839769] ? __lock_is_held+0xb6/0x140
+[ 159.839783] ? update_curr+0x2e3/0xa60
+[ 159.843808] 2868
+[ 159.847570] ? __enqueue_entity+0x109/0x1e0
+[ 159.847577] ? print_irqtrace_events+0x270/0x270
+[ 159.847584] ? numa_migrate_preferred+0x250/0x250
+[ 159.849793] 6378
+[ 159.854947] ? check_noncircular+0x20/0x20
+[ 159.854956] ? enqueue_task_fair+0x3b7/0x2950
+[ 159.880429] 6378
+[ 159.884630] ? find_held_lock+0x35/0x1d0
+[ 159.884641] ? check_preempt_wakeup+0xb20/0xb20
+[ 159.891922] ? find_held_lock+0x35/0x1d0
+[ 159.891934] ? lock_acquire+0x1d5/0x580
+[ 159.896743] Node 0
+[ 159.900766] ? process_backlog+0x45f/0x740
+[ 159.900771] ? lock_acquire+0x1d5/0x580
+[ 159.900778] ? process_backlog+0x1ab/0x740
+[ 159.902564] DMA32 free:2939248kB min:30316kB low:37892kB high:45468kB active_anon:0kB inactive_anon:0kB active_file:0kB inactive_file:0kB unevictable:0kB writepending:0kB present:3129292kB managed:2939956kB mlocked:0kB kernel_stack:0kB pagetables:0kB bounce:0kB free_pcp:708kB local_pcp:664kB free_cma:0kB
+[ 159.906581] ? lock_release+0xa40/0xa40
+[ 159.906597] __netif_receive_skb+0x2c/0x1b0
+[ 159.910447] lowmem_reserve[]:
+[ 159.912478] ? __netif_receive_skb+0x2c/0x1b0
+[ 159.912488] process_backlog+0x203/0x740
+[ 159.916777] 0
+[ 159.921495] ? mark_held_locks+0xaf/0x100
+[ 159.921510] net_rx_action+0x792/0x1910
+[ 159.926319] 0
+[ 159.928359] ? napi_complete_done+0x6c0/0x6c0
+[ 159.932564] 3510
+[ 159.937024] ? _raw_spin_unlock_irqrestore+0xa6/0xba
+[ 159.937034] ? try_to_wake_up+0xf9/0x1600
+[ 159.939067] 3510
+[ 159.943093] ? lock_downgrade+0x980/0x980
+[ 159.943106] ? migrate_swap_stop+0x970/0x970
+[ 159.951772] ? lock_acquire+0x1d5/0x580
+[ 159.951781] ? __hrtimer_run_queues+0x3dc/0xec0
+[ 159.955725] Node 0
+[ 159.957928] ? check_noncircular+0x20/0x20
+[ 159.957937] ? lock_release+0xa40/0xa40
+[ 159.962154] Normal free:2789380kB min:37100kB low:46372kB high:55644kB active_anon:241312kB inactive_anon:256kB active_file:14092kB inactive_file:33940kB unevictable:0kB writepending:296kB present:4718592kB managed:3594332kB mlocked:0kB kernel_stack:4704kB pagetables:2812kB bounce:0kB free_pcp:988kB local_pcp:568kB free_cma:0kB
+[ 159.966085] ? __lock_is_held+0xb6/0x140
+[ 159.966096] ? find_held_lock+0x35/0x1d0
+[ 159.970301] lowmem_reserve[]:
+[ 159.997341] ? clockevents_program_event+0x163/0x2e0
+[ 159.997349] ? lock_downgrade+0x980/0x980
+[ 160.001296] 0
+[ 160.005591] ? pvclock_read_flags+0x160/0x160
+[ 160.005606] ? find_held_lock+0x35/0x1d0
+[ 160.008678] 0
+[ 160.013140] ? print_irqtrace_events+0x270/0x270
+[ 160.013147] ? ktime_get+0x26f/0x3a0
+[ 160.017183] 0
+[ 160.018952] ? check_noncircular+0x20/0x20
+[ 160.018962] ? ktime_get_resolution_ns+0x300/0x300
+[ 160.023081] 0
+[ 160.027029] ? __lock_is_held+0xb6/0x140
+[ 160.033272] __do_softirq+0x2d7/0xb85
+[ 160.033280] ? task_prio+0x40/0x40
+[ 160.035327] Node 0
+[ 160.040403] ? __irqentry_text_end+0x1f8d44/0x1f8d44
+[ 160.040412] ? irq_exit+0xbb/0x200
+[ 160.044880] DMA:
+[ 160.046909] ? smp_apic_timer_interrupt+0x16b/0x700
+[ 160.046919] ? smp_call_function_single_interrupt+0x640/0x640
+[ 160.051040] 1*4kB
+[ 160.055410] ? _raw_spin_lock+0x32/0x40
+[ 160.055421] ? _raw_spin_unlock+0x22/0x30
+[ 160.059363] (U)
+[ 160.064000] ? handle_edge_irq+0x2b4/0x7c0
+[ 160.064009] ? task_prio+0x40/0x40
+[ 160.064025] ? trace_hardirqs_off_thunk+0x1a/0x1c
+[ 160.066232] 0*8kB
+[ 160.070437] do_softirq_own_stack+0x2a/0x40
+[ 160.070442] </IRQ>
+[ 160.074388] 0*16kB
+[ 160.103502] do_softirq.part.19+0x14d/0x190
+[ 160.103511] ? ip6_finish_output2+0xb6d/0x23a0
+[ 160.103519] __local_bh_enable_ip+0x1ee/0x230
+[ 160.107556] 1*32kB
+[ 160.111580] ip6_finish_output2+0xba0/0x23a0
+[ 160.111596] ? ip6_sk_dst_lookup_flow+0x7f0/0x7f0
+[ 160.114667] (U)
+[ 160.119740] ? ip6_mtu+0x369/0x4d0
+[ 160.119748] ? lock_downgrade+0x980/0x980
+[ 160.123865] 2*64kB
+[ 160.125636] ? __local_bh_enable_ip+0x121/0x230
+[ 160.125650] ? __lock_is_held+0xb6/0x140
+[ 160.130114] (U)
+[ 160.134152] ? ip6_mtu+0x1c7/0x4d0
+[ 160.135925] 1*128kB
+[ 160.140643] ? ip6_dst_ifdown+0x3d0/0x3d0
+[ 160.140659] ip6_finish_output+0x698/0xaf0
+[ 160.144340] (U)
+[ 160.146105] ? ip6_finish_output+0x698/0xaf0
+[ 160.146119] ip6_output+0x1eb/0x840
+[ 160.150324] 1*256kB
+[ 160.155222] ? ip6_finish_output+0xaf0/0xaf0
+[ 160.155237] ? ip6_fragment+0x3470/0x3470
+[ 160.157008] (U)
+[ 160.161032] ? nf_hook_slow+0xd3/0x1a0
+[ 160.161043] ip6_xmit+0xe1f/0x2260
+[ 160.164835] 0*512kB
+[ 160.168349] ? ip6_finish_output2+0x23a0/0x23a0
+[ 160.170554] 1*1024kB
+[ 160.175619] ? trace_hardirqs_on_thunk+0x1a/0x1c
+[ 160.175637] ? check_noncircular+0x20/0x20
+[ 160.179139] (U)
+[ 160.181169] ? lock_acquire+0x1d5/0x580
+[ 160.181176] ? sctp_chunk_put+0x2fd/0x420
+[ 160.181183] ? lock_acquire+0x1d5/0x580
+[ 160.186170] 1*2048kB
+[ 160.192014] ? sctp_v6_xmit+0x2e5/0x630
+[ 160.192026] ? ip6_forward_finish+0x140/0x140
+[ 160.194147] (M)
+[ 160.198088] ? lock_release+0xa40/0xa40
+[ 160.198108] sctp_v6_xmit+0x438/0x630
+[ 160.202222] 3*4096kB
+[ 160.204165] ? sctp_getname+0xc0/0xc0
+[ 160.204175] ? print_irqtrace_events+0x270/0x270
+[ 160.208377] (M)
+[ 160.211896] sctp_packet_transmit+0x225e/0x3750
+[ 160.211916] ? sctp_packet_config+0xc80/0xc80
+[ 160.216731] = 15908kB
+[ 160.218850] ? find_held_lock+0x35/0x1d0
+[ 160.218865] ? ip6_mtu+0x369/0x4d0
+[ 160.223152] Node 0
+[ 160.225358] ? find_held_lock+0x35/0x1d0
+[ 160.225373] ? lock_downgrade+0x980/0x980
+[ 160.227576] DMA32:
+[ 160.231866] ? lock_release+0xa40/0xa40
+[ 160.231884] ? __sctp_packet_append_chunk+0x4c9/0xd60
+[ 160.236428] 2*4kB
+[ 160.240892] ? sctp_csum_update+0x30/0x30
+[ 160.240900] ? sctp_packet_append_chunk+0xba0/0xba0
+[ 160.243108] (M)
+[ 160.247481] ? print_irqtrace_events+0x270/0x270
+[ 160.247487] ? sctp_packet_init+0x25d/0x450
+[ 160.247497] ? sctp_packet_append_chunk+0x48a/0xba0
+[ 160.252310] 1*8kB
+[ 160.254254] ? debug_check_no_locks_freed+0x3c0/0x3c0
+[ 160.254268] sctp_outq_flush+0xabb/0x4060
+[ 160.257773] (M)
+[ 160.261886] ? __lock_acquire+0x664/0x3e00
+[ 160.261899] ? __get_insn_slot+0x890/0xa50
+[ 160.264105] 0*16kB
+[ 160.268745] ? sctp_check_transmitted+0x1da0/0x1da0
+[ 160.272774] 1*32kB
+[ 160.274717] ? debug_check_no_locks_freed+0x3c0/0x3c0
+[ 160.274729] ? is_bpf_text_address+0x7b/0x120
+[ 160.278236] (M)
+[ 160.280526] ? lock_downgrade+0x980/0x980
+[ 160.280539] ? __free_insn_slot+0x5c0/0x5c0
+[ 160.284653] 1*64kB
+[ 160.288855] ? rcutorture_record_progress+0x10/0x10
+[ 160.288868] ? is_bpf_text_address+0xa4/0x120
+[ 160.290819] (M)
+[ 160.295188] ? kernel_text_address+0x102/0x140
+[ 160.295197] ? __kernel_text_address+0xd/0x40
+[ 160.298797] 2*128kB
+[ 160.301088] ? check_noncircular+0x20/0x20
+[ 160.301098] ? __save_stack_trace+0x7e/0xd0
+[ 160.305480] (M)
+[ 160.309599] ? depot_save_stack+0x12c/0x490
+[ 160.309613] ? find_held_lock+0x35/0x1d0
+[ 160.311556] 2*256kB
+[ 160.315416] ? debug_object_activate+0x307/0x730
+[ 160.315424] ? lock_downgrade+0x980/0x980
+[ 160.318937] (M)
+[ 160.321227] ? lock_release+0xa40/0xa40
+[ 160.321238] ? print_irqtrace_events+0x270/0x270
+[ 160.325876] 3*512kB
+[ 160.328255] ? add_timer+0x609/0x1470
+[ 160.328264] ? lock_downgrade+0x980/0x980
+[ 160.332998] (M)
+[ 160.337203] ? debug_object_activate+0x307/0x730
+[ 160.337212] ? _raw_spin_lock_irqsave+0x9e/0xc0
+[ 160.339157] 2*1024kB
+[ 160.343093] ? calc_wheel_index+0x13d/0x200
+[ 160.343103] ? mark_held_locks+0xaf/0x100
+[ 160.343111] ? _raw_spin_unlock_irqrestore+0x31/0xba
+[ 160.347229] (M)
+[ 160.351168] ? trace_hardirqs_on_caller+0x421/0x5c0
+[ 160.351176] ? trace_hardirqs_on+0xd/0x10
+[ 160.353560] 1*2048kB
+[ 160.357498] ? add_timer+0x60e/0x1470
+[ 160.357512] ? mod_timer_pending+0x1410/0x1410
+[ 160.361970] (M)
+[ 160.363911] ? sctp_init_cause+0x170/0x170
+[ 160.363931] ? is_bpf_text_address+0x7b/0x120
+[ 160.367868] 716*4096kB
+[ 160.371638] ? sctp_outq_tail+0x7b8/0xb40
+[ 160.371645] ? lock_release+0xa40/0xa40
+[ 160.374029] (M)
+[ 160.377799] ? sctp_outq_free+0x20/0x20
+[ 160.377815] ? sctp_endpoint_new+0xee0/0xee0
+[ 160.382535] = 2939248kB
+[ 160.384484] sctp_outq_uncork+0x5a/0x70
+[ 160.384495] sctp_do_sm+0x4e0/0x6ed0
+[ 160.389135] Node 0
+[ 160.393606] ? __save_stack_trace+0x7e/0xd0
+[ 160.395986] Normal:
+[ 160.400115] ? sctp_do_8_2_transport_strike.isra.15+0x8a0/0x8a0
+[ 160.400125] ? save_stack+0xa3/0xd0
+[ 160.403640] 837*4kB
+[ 160.405841] ? save_stack+0x43/0xd0
+[ 160.405849] ? kasan_kmalloc+0xad/0xe0
+[ 160.409880] (UME)
+[ 160.413992] ? kmem_cache_alloc_trace+0x136/0x750
+[ 160.414000] ? sctp_stream_init_ext+0x50/0xf0
+[ 160.414009] ? sctp_sendmsg+0x2cd7/0x35e0
+[ 160.416218] 898*8kB
+[ 160.420159] ? inet_sendmsg+0x11f/0x5e0
+[ 160.420168] ? sock_sendmsg+0xca/0x110
+[ 160.425327] (UME)
+[ 160.427441] ? SYSC_sendto+0x361/0x5c0
+[ 160.427447] ? SyS_sendto+0x40/0x50
+[ 160.427454] ? entry_SYSCALL_64_fastpath+0x29/0xa0
+[ 160.431572] 680*16kB
+[ 160.436559] ? find_held_lock+0x35/0x1d0
+[ 160.436568] ? print_irqtrace_events+0x270/0x270
+[ 160.438517] (UM)
+[ 160.443241] ? check_noncircular+0x20/0x20
+[ 160.443249] ? __lock_is_held+0xb6/0x140
+[ 160.447542] 416*32kB
+[ 160.452532] ? __lock_is_held+0xb6/0x140
+[ 160.454653] (UM)
+[ 160.459821] ? sctp_v6_cmp_addr+0xb0/0x5d0
+[ 160.463936] 260*64kB
+[ 160.465881] sctp_primitive_ASSOCIATE+0x9d/0xd0
+[ 160.465892] sctp_sendmsg+0x13bd/0x35e0
+[ 160.470100] (UM)
+[ 160.474301] ? tick_freeze+0x3a0/0x450
+[ 160.474316] ? sctp_id2assoc+0x390/0x390
+[ 160.476517] 229*128kB
+[ 160.481500] ? avc_has_perm+0x43e/0x680
+[ 160.481511] ? avc_has_perm_noaudit+0x520/0x520
+[ 160.483718] (UM)
+[ 160.488873] ? check_noncircular+0x20/0x20
+[ 160.488887] ? iterate_fd+0x3f0/0x3f0
+[ 160.493351] 43*256kB
+[ 160.495294] ? iput+0x7b1/0xaf0
+[ 160.495304] ? find_held_lock+0x35/0x1d0
+[ 160.499418] (UM)
+[ 160.503712] ? sock_has_perm+0x2a4/0x420
+[ 160.503722] ? lock_release+0xa32/0xa40
+[ 160.505931] 51*512kB
+[ 160.510913] ? trace_event_raw_event_sched_switch+0x800/0x800
+[ 160.510924] ? __check_object_size+0x8b/0x530
+[ 160.515389] (UM)
+[ 160.517336] inet_sendmsg+0x11f/0x5e0
+[ 160.517344] ? inet_sendmsg+0x11f/0x5e0
+[ 160.521895] 87*1024kB
+[ 160.526352] ? __might_sleep+0x95/0x190
+[ 160.526359] ? inet_create+0xf50/0xf50
+[ 160.526369] ? selinux_socket_sendmsg+0x36/0x40
+[ 160.528662] (UME)
+[ 160.532862] ? security_socket_sendmsg+0x89/0xb0
+[ 160.532871] ? inet_create+0xf50/0xf50
+[ 160.537163] 3*2048kB
+[ 160.539107] sock_sendmsg+0xca/0x110
+[ 160.539117] SYSC_sendto+0x361/0x5c0
+[ 160.543407] (U)
+[ 160.547437] ? SYSC_connect+0x4a0/0x4a0
+[ 160.547445] ? put_unused_fd+0x62/0x70
+[ 160.549743] 629*4096kB
+[ 160.554461] ? lock_downgrade+0x980/0x980
+[ 160.554476] ? do_raw_spin_trylock+0x190/0x190
+[ 160.558592] (UM)
+[ 160.560550] ? SyS_futex+0x269/0x390
+[ 160.564492] = 2789412kB
+[ 160.569208] ? SyS_socketpair+0x40d/0x6f0
+[ 160.569219] ? do_futex+0x22a0/0x22a0
+[ 160.571519] Node 0 hugepages_total=0 hugepages_free=0 hugepages_surp=0 hugepages_size=2048kB
+[ 160.575280] ? entry_SYSCALL_64_fastpath+0x5/0xa0
+[ 160.575293] SyS_sendto+0x40/0x50
+[ 160.579410] 12077 total pagecache pages
+[ 160.581356] entry_SYSCALL_64_fastpath+0x29/0xa0
+[ 160.581363] RIP: 0033:0x453299
+[ 160.586095] 0 pages in swap cache
+[ 160.590718] RSP: 002b:00007ff199437c58 EFLAGS: 00000212 ORIG_RAX: 000000000000002c
+[ 160.590726] RAX: ffffffffffffffda RBX: 000000000071bea0 RCX: 0000000000453299
+[ 160.590731] RDX: 0000000000000001 RSI: 0000000020925000 RDI: 0000000000000013
+[ 160.593117] Swap cache stats: add 0, delete 0, find 0/0
+[ 160.597396] RBP: 000000000000055a R08: 0000000020108fe4 R09: 000000000000001c
+[ 160.597400] R10: 0000000000000000 R11: 0000000000000212 R12: 00000000006f7110
+[ 160.597404] R13: 00000000ffffffff R14: 00007ff1994386d4 R15: 0000000000000000
+[ 160.597419] Code:
+[ 160.601531] Free swap = 0kB
+[ 160.606597] 41 f6 87 83
+[ 160.608559] Total swap = 0kB
+[ 160.613535] 00 00 00 04 75 37 e8
+[ 160.617674] 1965969 pages RAM
+[ 160.620041] 0f 83 95 fc 8b 85
+[ 160.623827] 0 pages HighMem/MovableOnly
+[ 160.628368] 14 fe ff ff 48 8b
+[ 160.630329] 328420 pages reserved
+[ 160.634524] b5 50 fe ff ff 4c 8d 2c c6 44 8d 60 01 4c 89 e8 48 c1 e8 03 <42> 80 3c 30 00 0f 85 26 03 00 00 4d 89 7d 00 44 89 a5 14 fe ff
+[ 161.053526] RIP: ip6t_do_table+0x132d/0x1a30 RSP: ffff8801db406c20
+[ 161.059887] ---[ end trace 801c529c9261f781 ]---
+[ 161.064629] Kernel panic - not syncing: Fatal exception in interrupt
+[ 161.071602] Dumping ftrace buffer:
+[ 161.075114] (ftrace buffer empty)
+[ 161.078802] Kernel Offset: disabled
+[ 161.082397] Rebooting in 86400 seconds..
diff --git a/pkg/report/testdata/linux/report/199 b/pkg/report/testdata/linux/report/199
new file mode 100644
index 000000000..ea2aa11a8
--- /dev/null
+++ b/pkg/report/testdata/linux/report/199
@@ -0,0 +1,164 @@
+# TODO: must be "in iov_iter_advance".
+TITLE: KASAN: stack-out-of-bounds Read in warn_alloc_failed
+
+[ 81.174109] ==================================================================
+[ 81.174125] BUG: KASAN: stack-out-of-bounds in iov_iter_advance+0x4c0/0x4f0 at addr ffff8801ca657d38
+[ 81.174129] Read of size 8 by task syz-executor5/12434
+[ 81.174136] page:ffffea00072995c0 count:0 mapcount:0 mapping: (null) index:0x0
+[ 81.174141] flags: 0x200000000000000()
+[ 81.174144] page dumped because: kasan: bad access detected
+[ 81.219855] 0000000000000001 ffff8800ba75f830 ffffffff81cac64d 1ffff100174ebf0a
+[ 81.227938] ffffffff82cae060 dffffc0000000000 ffff8800ba75f8f0 00000000024000c2
+[ 81.235928] ffff8800ba75f948 ffffffff81400659 ffff880200000001 0000000000000000
+[ 81.243919] Call Trace:
+[ 81.246487] [<ffffffff81cac64d>] dump_stack+0xc1/0x124
+[ 81.251826] [<ffffffff81400659>] warn_alloc_failed+0x1c9/0x240
+[ 81.257859] [<ffffffff81400490>] ? zone_watermark_ok_safe+0x2a0/0x2a0
+[ 81.264501] [<ffffffff811ef330>] ? debug_check_no_locks_freed+0x2c0/0x2c0
+[ 81.271488] [<ffffffff814c373d>] ? alloc_pages_current+0x12d/0x3d0
+[ 81.277872] [<ffffffff814aa5cb>] __vmalloc_node_range+0x56b/0x6f0
+[ 81.284167] [<ffffffff8145acd6>] ? kmalloc_order_trace+0x86/0x190
+[ 81.290633] [<ffffffff814aa820>] vmalloc+0x60/0x70
+[ 81.295626] [<ffffffff82434c76>] ? xt_alloc_entry_offsets+0x46/0x60
+[ 81.302093] [<ffffffff82434c76>] xt_alloc_entry_offsets+0x46/0x60
+[ 81.308386] [<ffffffff82760bbb>] translate_table+0x2fb/0x1b60
+[ 81.314333] [<ffffffff814cf498>] ? ___slab_alloc+0x448/0x550
+[ 81.320194] [<ffffffff827608c0>] ? arpt_alloc_initial_table+0x6a0/0x6a0
+[ 81.327015] [<ffffffff814767b9>] ? __might_fault+0xe9/0x1d0
+[ 81.332799] [<ffffffff814767e9>] ? __might_fault+0x119/0x1d0
+[ 81.338657] [<ffffffff82764c85>] do_arpt_set_ctl+0x295/0x5b0
+[ 81.344517] [<ffffffff827649f0>] ? compat_do_arpt_set_ctl+0x6a0/0x6a0
+[ 81.351159] [<ffffffff82a06e90>] ? mutex_trylock+0x1e0/0x1e0
+[ 81.357021] [<ffffffff82a077f2>] ? mutex_unlock+0x12/0x20
+[ 81.362622] [<ffffffff8239a24c>] ? nf_sockopt_find.constprop.0+0x1ac/0x220
+[ 81.369695] [<ffffffff8239a3fc>] nf_setsockopt+0x6c/0xc0
+[ 81.375207] [<ffffffff825dda36>] ip_setsockopt+0xa6/0xc0
+[ 81.380720] [<ffffffff825fcf47>] tcp_setsockopt+0x87/0xd0
+[ 81.386320] [<ffffffff8156c3d6>] ? __fget_light+0xa6/0x1e0
+[ 81.392010] [<ffffffff82202fca>] sock_common_setsockopt+0x9a/0xe0
+[ 81.399088] [<ffffffff8220027d>] SyS_setsockopt+0x15d/0x240
+[ 81.404858] [<ffffffff82200120>] ? SyS_recv+0x40/0x40
+[ 81.410109] [<ffffffff8156c4d0>] ? __fget_light+0x1a0/0x1e0
+[ 81.415885] [<ffffffff81002284>] ? lockdep_sys_exit_thunk+0x12/0x14
+[ 81.422439] [<ffffffff82a16b1b>] entry_SYSCALL_64_fastpath+0x18/0x94
+[ 81.428999] CPU: 0 PID: 12434 Comm: syz-executor5 Not tainted 4.4.114+ #249
+[ 81.429116] Mem-Info:
+[ 81.429135] active_anon:49698 inactive_anon:20 isolated_anon:0
+[ 81.429135] active_file:3605 inactive_file:7475 isolated_file:0
+[ 81.429135] unevictable:0 dirty:102 writeback:0 unstable:0
+[ 81.429135] slab_reclaimable:4964 slab_unreclaimable:8278
+[ 81.429135] mapped:24075 shmem:26 pagetables:676 bounce:0
+[ 81.429135] free:1551197 free_pcp:519 free_cma:0
+[ 81.429161] Node 0 DMA free:15904kB min:324kB low:404kB high:484kB active_anon:0kB inactive_anon:0kB active_file:0kB inactive_file:0kB unevictable:0kB isolated(anon):0kB isolated(file):0kB present:15992kB managed:15904kB mlocked:0kB dirty:0kB writeback:0kB mapped:0kB shmem:0kB slab_reclaimable:0kB slab_unreclaimable:0kB kernel_stack:0kB pagetables:0kB unstable:0kB bounce:0kB free_pcp:0kB local_pcp:0kB free_cma:0kB writeback_tmp:0kB pages_scanned:0 all_unreclaimable? yes
+[ 81.429169] lowmem_reserve[]: 0 2936 6453 6453
+[ 81.429195] Node 0 DMA32 free:2821564kB min:61364kB low:76704kB high:92044kB active_anon:107768kB inactive_anon:12kB active_file:7108kB inactive_file:10020kB unevictable:0kB isolated(anon):0kB isolated(file):0kB present:3129292kB managed:3012004kB mlocked:0kB dirty:172kB writeback:0kB mapped:34476kB shmem:24kB slab_reclaimable:4712kB slab_unreclaimable:13276kB kernel_stack:1792kB pagetables:1040kB unstable:0kB bounce:0kB free_pcp:840kB local_pcp:300kB free_cma:0kB writeback_tmp:0kB pages_scanned:0 all_unreclaimable? no
+[ 81.429203] lowmem_reserve[]: 0 0 3516 3516
+[ 81.429228] Node 0 Normal free:3367320kB min:73476kB low:91844kB high:110212kB active_anon:91024kB inactive_anon:68kB active_file:7312kB inactive_file:19880kB unevictable:0kB isolated(anon):0kB isolated(file):0kB present:4718592kB managed:3601032kB mlocked:0kB dirty:236kB writeback:0kB mapped:61824kB shmem:80kB slab_reclaimable:15144kB slab_unreclaimable:19836kB kernel_stack:3008kB pagetables:1664kB unstable:0kB bounce:0kB free_pcp:1236kB local_pcp:644kB free_cma:0kB writeback_tmp:0kB pages_scanned:0 all_unreclaimable? no
+[ 81.429235] lowmem_reserve[]: 0 0 0 0
+[ 81.429270] Node 0 DMA: 0*4kB 0*8kB 0*16kB 1*32kB (U) 2*64kB (U) 1*128kB (U) 1*256kB (U) 0*512kB 1*1024kB (U) 1*2048kB (U) 3*4096kB (M) = 15904kB
+[ 81.429310] Node 0 DMA32: 85*4kB (UM) 170*8kB (UME) 203*16kB (UME) 179*32kB (UM) 148*64kB (UM) 70*128kB (UME) 12*256kB (UME) 8*512kB (UM) 4*1024kB (UME) 2*2048kB (ME) 678*4096kB (UM) = 2821556kB
+[ 81.429351] Node 0 Normal: 164*4kB (UM) 243*8kB (UME) 152*16kB (UME) 132*32kB (UM) 137*64kB (UME) 88*128kB (UME) 13*256kB (UM) 5*512kB (UM) 4*1024kB (UME) 5*2048kB (UME) 810*4096kB (M) = 3367272kB
+[ 81.429353] 11105 total pagecache pages
+[ 81.429356] 0 pages in swap cache
+[ 81.429360] Swap cache stats: add 0, delete 0, find 0/0
+[ 81.429362] Free swap = 0kB
+[ 81.429364] Total swap = 0kB
+[ 81.429366] 1965969 pages RAM
+[ 81.429367] 0 pages HighMem/MovableOnly
+[ 81.429369] 308734 pages reserved
+[ 81.499041] vmalloc: allocation failure: 17178820608 bytes
+[ 81.499047] syz-executor7: page allocation failure: order:0, mode:0x24000c2
+[ 81.709227] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
+[ 81.718558] 0000000000000000 ffff8801ca6579e0 ffffffff81cac64d ffffed00394cafa7
+[ 81.726560] ffffed00394cafa7 0000000000000008 0000000000000000 ffff8801ca657d38
+[ 81.734551] ffff8801ca657a68 ffffffff814d588d ffff8801ccdc4680 0000000000000001
+[ 81.742557] Call Trace:
+[ 81.745128] [<ffffffff81cac64d>] dump_stack+0xc1/0x124
+[ 81.750475] [<ffffffff814d588d>] kasan_report.part.2+0x44d/0x540
+[ 81.756691] [<ffffffff81ce6f10>] ? iov_iter_advance+0x4c0/0x4f0
+[ 81.762818] [<ffffffff81476863>] ? __might_fault+0x193/0x1d0
+[ 81.768680] [<ffffffff814d5a3e>] __asan_report_load8_noabort+0x2e/0x30
+[ 81.775414] [<ffffffff81ce6f10>] iov_iter_advance+0x4c0/0x4f0
+[ 81.781363] [<ffffffff820882d3>] tun_get_user+0x2e3/0x2370
+[ 81.787053] [<ffffffff82087ff0>] ? tun_net_xmit+0x1110/0x1110
+[ 81.793005] [<ffffffff811e8241>] ? __lock_is_held+0xa1/0xf0
+[ 81.798779] [<ffffffff82082e81>] ? __tun_get+0x131/0x240
+[ 81.804292] [<ffffffff8208a57a>] tun_chr_write_iter+0xda/0x190
+[ 81.810328] [<ffffffff815103fe>] __vfs_write+0x32e/0x440
+[ 81.815846] [<ffffffff815100d0>] ? __vfs_read+0x420/0x420
+[ 81.821454] [<ffffffff81b70667>] ? apparmor_file_permission+0x27/0x30
+[ 81.828098] [<ffffffff815118c5>] ? rw_verify_area+0x105/0x2f0
+[ 81.834046] [<ffffffff81511fdf>] vfs_write+0x18f/0x530
+[ 81.839386] [<ffffffff815146b9>] SyS_write+0xd9/0x1b0
+[ 81.844647] [<ffffffff815145e0>] ? SyS_read+0x1b0/0x1b0
+[ 81.850078] [<ffffffff81002284>] ? lockdep_sys_exit_thunk+0x12/0x14
+[ 81.856550] [<ffffffff82a16b1b>] entry_SYSCALL_64_fastpath+0x18/0x94
+[ 81.863104] Memory state around the buggy address:
+[ 81.863111] CPU: 1 PID: 12430 Comm: syz-executor7 Not tainted 4.4.114+ #249
+[ 81.863118] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
+[ 81.863127] 0000000000000001 ffff8800ba75f830 ffffffff81cac64d 1ffff100174ebf0a
+[ 81.863135] ffffffff82cae060 dffffc0000000000 ffff8800ba75f8f0 00000000024000c2
+[ 81.863143] ffff8800ba75f948 ffffffff81400659 ffff880200000001 0000000000000000
+[ 81.863144] Call Trace:
+[ 81.863153] [<ffffffff81cac64d>] dump_stack+0xc1/0x124
+[ 81.863161] [<ffffffff81400659>] warn_alloc_failed+0x1c9/0x240
+[ 81.863168] [<ffffffff81400490>] ? zone_watermark_ok_safe+0x2a0/0x2a0
+[ 81.863176] [<ffffffff811e8480>] ? SOFTIRQ_verbose+0x10/0x10
+[ 81.863185] [<ffffffff811ef330>] ? debug_check_no_locks_freed+0x2c0/0x2c0
+[ 81.863192] [<ffffffff814c373d>] ? alloc_pages_current+0x12d/0x3d0
+[ 81.863201] [<ffffffff814aa5cb>] __vmalloc_node_range+0x56b/0x6f0
+[ 81.863208] [<ffffffff8145acd6>] ? kmalloc_order_trace+0x86/0x190
+[ 81.863215] [<ffffffff814aa820>] vmalloc+0x60/0x70
+[ 81.863224] [<ffffffff82434c76>] ? xt_alloc_entry_offsets+0x46/0x60
+[ 81.863230] [<ffffffff82434c76>] xt_alloc_entry_offsets+0x46/0x60
+[ 81.863238] [<ffffffff82760bbb>] translate_table+0x2fb/0x1b60
+[ 81.863246] [<ffffffff811e8480>] ? SOFTIRQ_verbose+0x10/0x10
+[ 81.863254] [<ffffffff814cf498>] ? ___slab_alloc+0x448/0x550
+[ 81.863261] [<ffffffff827608c0>] ? arpt_alloc_initial_table+0x6a0/0x6a0
+[ 81.863270] [<ffffffff814767b9>] ? __might_fault+0xe9/0x1d0
+[ 81.863278] [<ffffffff814767e9>] ? __might_fault+0x119/0x1d0
+[ 81.863286] [<ffffffff82764c85>] do_arpt_set_ctl+0x295/0x5b0
+[ 81.863293] [<ffffffff827649f0>] ? compat_do_arpt_set_ctl+0x6a0/0x6a0
+[ 81.863300] [<ffffffff82a06e90>] ? mutex_trylock+0x1e0/0x1e0
+[ 81.863307] [<ffffffff82a077f2>] ? mutex_unlock+0x12/0x20
+[ 81.863316] [<ffffffff8239a24c>] ? nf_sockopt_find.constprop.0+0x1ac/0x220
+[ 81.863322] [<ffffffff8239a3fc>] nf_setsockopt+0x6c/0xc0
+[ 81.863330] [<ffffffff825dda36>] ip_setsockopt+0xa6/0xc0
+[ 81.863337] [<ffffffff825fcf47>] tcp_setsockopt+0x87/0xd0
+[ 81.863345] [<ffffffff8156c3d6>] ? __fget_light+0xa6/0x1e0
+[ 81.863354] [<ffffffff82202fca>] sock_common_setsockopt+0x9a/0xe0
+[ 81.863361] [<ffffffff8220027d>] SyS_setsockopt+0x15d/0x240
+[ 81.863368] [<ffffffff82200120>] ? SyS_recv+0x40/0x40
+[ 81.863377] [<ffffffff81002284>] ? lockdep_sys_exit_thunk+0x12/0x14
+[ 81.863385] [<ffffffff82a16b1b>] entry_SYSCALL_64_fastpath+0x18/0x94
+[ 81.863388] Mem-Info:
+[ 81.863406] active_anon:49673 inactive_anon:45 isolated_anon:0
+[ 81.863406] active_file:3605 inactive_file:7475 isolated_file:0
+[ 81.863406] unevictable:0 dirty:102 writeback:0 unstable:0
+[ 81.863406] slab_reclaimable:4964 slab_unreclaimable:8304
+[ 81.863406] mapped:24149 shmem:63 pagetables:639 bounce:0
+[ 81.863406] free:1551167 free_pcp:489 free_cma:0
+[ 81.863432] Node 0 DMA free:15904kB min:324kB low:404kB high:484kB active_anon:0kB inactive_anon:0kB active_file:0kB inactive_file:0kB unevictable:0kB isolated(anon):0kB isolated(file):0kB present:15992kB managed:15904kB mlocked:0kB dirty:0kB writeback:0kB mapped:0kB shmem:0kB slab_reclaimable:0kB slab_unreclaimable:0kB kernel_stack:0kB pagetables:0kB unstable:0kB bounce:0kB free_pcp:0kB local_pcp:0kB free_cma:0kB writeback_tmp:0kB pages_scanned:0 all_unreclaimable? yes
+[ 81.863439] lowmem_reserve[]: 0 2936 6453 6453
+[ 81.863465] Node 0 DMA32 free:2821768kB min:61364kB low:76704kB high:92044kB active_anon:107568kB inactive_anon:12kB active_file:7108kB inactive_file:10020kB unevictable:0kB isolated(anon):0kB isolated(file):0kB present:3129292kB managed:3012004kB mlocked:0kB dirty:172kB writeback:0kB mapped:34624kB shmem:24kB slab_reclaimable:4712kB slab_unreclaimable:13276kB kernel_stack:1792kB pagetables:892kB unstable:0kB bounce:0kB free_pcp:1204kB local_pcp:664kB free_cma:0kB writeback_tmp:0kB pages_scanned:0 all_unreclaimable? no
+[ 81.863473] lowmem_reserve[]: 0 0 3516 3516
+[ 81.863498] Node 0 Normal free:3366996kB min:73476kB low:91844kB high:110212kB active_anon:91124kB inactive_anon:168kB active_file:7312kB inactive_file:19880kB unevictable:0kB isolated(anon):0kB isolated(file):0kB present:4718592kB managed:3601032kB mlocked:0kB dirty:236kB writeback:0kB mapped:61972kB shmem:228kB slab_reclaimable:15144kB slab_unreclaimable:19940kB kernel_stack:3008kB pagetables:1664kB unstable:0kB bounce:0kB free_pcp:752kB local_pcp:160kB free_cma:0kB writeback_tmp:0kB pages_scanned:0 all_unreclaimable? no
+[ 81.863505] lowmem_reserve[]: 0 0 0 0
+[ 81.863541] Node 0 DMA: 0*4kB 0*8kB 0*16kB 1*32kB (U) 2*64kB (U) 1*128kB (U) 1*256kB (U) 0*512kB 1*1024kB (U) 1*2048kB (U) 3*4096kB (M) = 15904kB
+[ 81.863581] Node 0 DMA32: 102*4kB (UM) 178*8kB (UME) 202*16kB (UME) 182*32kB (UM) 148*64kB (UM) 70*128kB (UME) 12*256kB (UME) 8*512kB (UM) 4*1024kB (UME) 2*2048kB (ME) 678*4096kB (UM) = 2821768kB
+[ 81.863620] Node 0 Normal: 181*4kB (UM) 241*8kB (UME) 153*16kB (UME) 122*32kB (M) 137*64kB (UME) 87*128kB (UME) 13*256kB (UM) 5*512kB (UM) 4*1024kB (UME) 5*2048kB (UME) 810*4096kB (M) = 3366892kB
+[ 81.863623] 11142 total pagecache pages
+[ 81.863625] 0 pages in swap cache
+[ 81.863629] Swap cache stats: add 0, delete 0, find 0/0
+[ 81.863631] Free swap = 0kB
+[ 81.863633] Total swap = 0kB
+[ 81.863635] 1965969 pages RAM
+[ 81.863637] 0 pages HighMem/MovableOnly
+[ 81.863639] 308734 pages reserved
+[ 82.356238] ffff8801ca657c00: f2 f2 f2 00 00 00 00 00 f2 f2 f2 f3 f3 f3 f3 00
+[ 82.363566] ffff8801ca657c80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+[ 82.370894] >ffff8801ca657d00: f1 f1 f1 f1 00 00 f2 f2 f2 f2 f2 f2 00 00 00 00
+[ 82.378222] ^
+[ 82.383382] ffff8801ca657d80: 00 f2 f2 f2 f2 f2 f2 f2 00 00 00 00 00 f2 f2 f2
+[ 82.390710] ffff8801ca657e00: f3 f3 f3 f3 00 00 00 00 00 00 00 00 00 00 00 00
+[ 82.398044] ==================================================================
diff --git a/pkg/report/testdata/linux/report/200 b/pkg/report/testdata/linux/report/200
new file mode 100644
index 000000000..2187f2f03
--- /dev/null
+++ b/pkg/report/testdata/linux/report/200
@@ -0,0 +1,217 @@
+# TODO: must be "in ip6t_do_table"
+TITLE: general protection fault in should_fail
+
+[ 73.452724] FAULT_INJECTION: forcing a failure.
+[ 73.452724] name failslab, interval 1, probability 0, space 0, times 0
+[ 73.457945] kasan: CONFIG_KASAN_INLINE enabled
+[ 73.464063] CPU: 0 PID: 16176 Comm: syz-executor1 Not tainted 4.15.0+ #221
+[ 73.468778] kasan: GPF could be caused by NULL-ptr deref or user memory access
+[ 73.475740] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
+[ 73.475749] Call Trace:
+[ 73.475768] dump_stack+0x194/0x257
+[ 73.475785] ? arch_local_irq_restore+0x53/0x53
+[ 73.483139] general protection fault: 0000 [#1] SMP KASAN
+[ 73.492440] ? kernel_text_address+0x102/0x140
+[ 73.494988] Dumping ftrace buffer:
+[ 73.498589] should_fail+0x8c0/0xa40
+[ 73.503210] (ftrace buffer empty)
+[ 73.508718] ? fault_create_debugfs_attr+0x1f0/0x1f0
+[ 73.513259] Modules linked in:
+[ 73.516777] ? save_stack+0xa3/0xd0
+[ 73.524134] ? save_stack+0x43/0xd0
+[ 73.529204] CPU: 1 PID: 16173 Comm: syz-executor6 Not tainted 4.15.0+ #221
+[ 73.532365] ? kasan_kmalloc+0xad/0xe0
+[ 73.535953] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
+[ 73.539548] ? kasan_slab_alloc+0x12/0x20
+[ 73.546528] RIP: 0010:ip6t_do_table+0x132d/0x1a30
+[ 73.550380] ? find_held_lock+0x35/0x1d0
+[ 73.559697] RSP: 0018:ffff8801d30d6728 EFLAGS: 00010246
+[ 73.563817] ? __lock_is_held+0xb6/0x140
+[ 73.572663] ? trace_event_raw_event_sched_switch+0x800/0x800
+[ 73.577980] RAX: 0000000000000000 RBX: ffff8801ac392080 RCX: ffffffff84db22a1
+[ 73.582012] ? rcu_note_context_switch+0x710/0x710
+[ 73.587857] RDX: 00000000000003e5 RSI: 0000000000000000 RDI: ffff8801ac3921de
+[ 73.595103] should_failslab+0xec/0x120
+[ 73.599991] RBP: ffff8801d30d6970 R08: ffff8801d30d6a68 R09: 0000000000000002
+[ 73.607234] kmem_cache_alloc_node_trace+0x5a/0x750
+[ 73.611171] R10: 00000000000000d0 R11: 0000000000000000 R12: 0000000000000001
+[ 73.618420] __kmalloc_node_track_caller+0x33/0x70
+[ 73.623391] R13: 0000000000000000 R14: dffffc0000000000 R15: ffff8801ac392150
+[ 73.630634] __kmalloc_reserve.isra.39+0x41/0xd0
+[ 73.635523] FS: 00007fdbb5763700(0000) GS:ffff8801db500000(0000) knlGS:0000000000000000
+[ 73.642765] __alloc_skb+0x13b/0x780
+[ 73.647482] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
+[ 73.655677] ? skb_copy_and_csum_dev+0x370/0x370
+[ 73.659353] CR2: 000000000071c000 CR3: 00000001d3d09001 CR4: 00000000001606e0
+[ 73.665212] ? __mutex_unlock_slowpath+0xe9/0xac0
+[ 73.669925] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
+[ 73.677168] ? wait_for_completion+0x770/0x770
+[ 73.681971] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
+[ 73.689215] ? find_held_lock+0x35/0x1d0
+[ 73.693760] Call Trace:
+[ 73.701010] netlink_dump+0x545/0xcf0
+[ 73.705034] ? __lock_acquire+0x664/0x3e00
+[ 73.707585] ? rtnetlink_rcv_msg+0x665/0xb10
+[ 73.711353] ? get_page_from_freelist+0x2d70/0x52f0
+[ 73.715550] ? netlink_broadcast+0x50/0x50
+[ 73.719946] ? ip6t_error+0x60/0x60
+[ 73.724908] ? rtnl_dump_all+0x460/0x460
+[ 73.729111] ? check_noncircular+0x20/0x20
+[ 73.732706] __netlink_dump_start+0x4f0/0x6d0
+[ 73.736733] ? lock_acquire+0x1d5/0x580
+[ 73.740934] ? __lock_is_held+0xb6/0x140
+[ 73.745393] ? lock_acquire+0x1d5/0x580
+[ 73.749338] rtnetlink_rcv_msg+0x7f0/0xb10
+[ 73.753364] ? ip6_input+0x11f/0x560
+[ 73.757308] ? validate_linkmsg+0x8e0/0x8e0
+[ 73.761508] ? lock_release+0xa40/0xa40
+[ 73.765187] ? rtnl_stats_get+0xa10/0xa10
+[ 73.769477] ip6table_security_hook+0x65/0x80
+[ 73.773416] ? __might_fault+0x110/0x1d0
+[ 73.777530] nf_hook_slow+0xba/0x1a0
+[ 73.781998] netlink_rcv_skb+0x14b/0x380
+[ 73.786027] ip6_input+0x35c/0x560
+[ 73.789707] ? validate_linkmsg+0x8e0/0x8e0
+[ 73.793735] ? ip6_input_finish+0x17a0/0x17a0
+[ 73.797243] ? netlink_ack+0xa10/0xa10
+[ 73.801530] ? ipv6_chk_mcast_addr+0x2f2/0x810
+[ 73.805992] ? netlink_skb_destructor+0x1d0/0x1d0
+[ 73.809849] ? ip6_make_skb+0x5e0/0x5e0
+[ 73.814398] rtnetlink_rcv+0x1c/0x20
+[ 73.819209] ip6_mc_input+0x3a8/0xb10
+[ 73.823148] netlink_unicast+0x4c4/0x6b0
+[ 73.826830] ? ipv6_rcv+0x1fa0/0x1fa0
+[ 73.830600] ? netlink_attachskb+0x8a0/0x8a0
+[ 73.834636] ip6_rcv_finish+0x297/0x8c0
+[ 73.838400] ? security_netlink_send+0x81/0xb0
+[ 73.842770] ? ip6_input+0x560/0x560
+[ 73.846717] netlink_sendmsg+0xa4a/0xe60
+[ 73.851264] ? ipv6_defrag+0x1fa/0x2f0
+[ 73.854949] ? netlink_unicast+0x6b0/0x6b0
+[ 73.858975] ? nf_hook_slow+0xd3/0x1a0
+[ 73.862829] ? security_socket_sendmsg+0x89/0xb0
+[ 73.867031] ipv6_rcv+0xf37/0x1fa0
+[ 73.870885] ? netlink_unicast+0x6b0/0x6b0
+[ 73.875616] ? ip6_rcv_finish+0x8c0/0x8c0
+[ 73.879118] sock_sendmsg+0xca/0x110
+[ 73.883321] ? rcutorture_record_progress+0x10/0x10
+[ 73.887438] ___sys_sendmsg+0x767/0x8b0
+[ 73.891125] ? is_bpf_text_address+0xa4/0x120
+[ 73.896104] ? copy_msghdr_from_user+0x590/0x590
+[ 73.900049] ? ip6_input+0x560/0x560
+[ 73.904510] ? __f_unlock_pos+0x19/0x20
+[ 73.909226] ? ip6_rcv_finish+0x8c0/0x8c0
+[ 73.912905] ? lock_downgrade+0x980/0x980
+[ 73.916848] __netif_receive_skb_core+0x1a41/0x3460
+[ 73.920960] ? map_files_get_link+0x3a0/0x3a0
+[ 73.925076] ? debug_check_no_locks_freed+0x3c0/0x3c0
+[ 73.930059] ? __fget_light+0x297/0x380
+[ 73.934524] ? nf_ingress+0x9f0/0x9f0
+[ 73.939675] ? fget_raw+0x20/0x20
+[ 73.943615] ? __skb_flow_dissect+0x4ce/0x3f00
+[ 73.947383] ? find_held_lock+0x35/0x1d0
+[ 73.950804] ? entry_SYSCALL_64_fastpath+0x29/0xa0
+[ 73.955356] ? __mutex_unlock_slowpath+0xe9/0xac0
+[ 73.959386] ? debug_check_no_locks_freed+0x3c0/0x3c0
+[ 73.964279] ? vfs_write+0x374/0x510
+[ 73.969090] ? __skb_flow_get_ports+0x420/0x420
+[ 73.974244] ? wait_for_completion+0x770/0x770
+[ 73.977932] ? check_noncircular+0x20/0x20
+[ 73.982566] ? __fdget+0x18/0x20
+[ 73.987113] ? __lock_is_held+0xb6/0x140
+[ 73.991320] __sys_sendmsg+0xe5/0x210
+[ 73.994653] ? print_irqtrace_events+0x270/0x270
+[ 73.998679] ? __sys_sendmsg+0xe5/0x210
+[ 74.002447] ? find_held_lock+0x35/0x1d0
+[ 74.007165] ? SyS_shutdown+0x290/0x290
+[ 74.011112] ? lock_downgrade+0x980/0x980
+[ 74.015135] ? __sb_end_write+0xa0/0xd0
+[ 74.019756] ? tun_build_skb.isra.50+0xb51/0x1810
+[ 74.023879] ? trace_hardirqs_on_caller+0x421/0x5c0
+[ 74.027810] ? pvclock_read_flags+0x160/0x160
+[ 74.032625] SyS_sendmsg+0x2d/0x50
+[ 74.037606] ? lock_acquire+0x1d5/0x580
+[ 74.042066] entry_SYSCALL_64_fastpath+0x29/0xa0
+[ 74.045571] ? lock_acquire+0x1d5/0x580
+[ 74.049511] RIP: 0033:0x453299
+[ 74.054235] ? netif_receive_skb_internal+0xa2/0x670
+[ 74.058173] RSP: 002b:00007f692ffbac58 EFLAGS: 00000212
+[ 74.061336] ? ktime_get_with_offset+0x2c1/0x420
+[ 74.066401] ORIG_RAX: 000000000000002e
+[ 74.071734] ? lock_release+0xa40/0xa40
+[ 74.076451] RAX: ffffffffffffffda RBX: 00007f692ffbaaa0 RCX: 0000000000453299
+[ 74.080394] ? do_gettimeofday+0x190/0x190
+[ 74.084333] RDX: 0000000000000000 RSI: 0000000020004fc8 RDI: 0000000000000013
+[ 74.091575] ? tun_build_skb.isra.50+0x397/0x1810
+[ 74.095775] RBP: 00007f692ffbaa90 R08: 0000000000000000 R09: 0000000000000000
+[ 74.103021] __netif_receive_skb+0x2c/0x1b0
+[ 74.107822] R10: 0000000000000000 R11: 0000000000000212 R12: 00000000004b8096
+[ 74.115064] ? __netif_receive_skb+0x2c/0x1b0
+[ 74.119350] R13: 00007f692ffbabc8 R14: 00000000004b8096 R15: 0000000000000000
+[ 74.126590] netif_receive_skb_internal+0x10b/0x670
+[ 74.143293] ? resched_curr+0x13e/0x1a0
+[ 74.147245] ? dev_cpu_dead+0xb00/0xb00
+[ 74.151197] ? print_irqtrace_events+0x270/0x270
+[ 74.155923] ? check_noncircular+0x20/0x20
+[ 74.160130] ? check_noncircular+0x20/0x20
+[ 74.164341] ? rcu_pm_notify+0xc0/0xc0
+[ 74.168214] netif_receive_skb+0xae/0x390
+[ 74.172336] ? netif_receive_skb_internal+0x670/0x670
+[ 74.177498] ? find_held_lock+0x35/0x1d0
+[ 74.181536] ? tun_rx_batched.isra.52+0x5c4/0x870
+[ 74.186354] tun_rx_batched.isra.52+0x5ee/0x870
+[ 74.190997] ? skb_probe_transport_header.constprop.68+0x14a/0x2f0
+[ 74.197290] ? tun_sock_write_space+0x370/0x370
+[ 74.201941] tun_get_user+0x25de/0x3940
+[ 74.205886] ? debug_check_no_locks_freed+0x3c0/0x3c0
+[ 74.211049] ? debug_check_no_locks_freed+0x3c0/0x3c0
+[ 74.216223] ? tun_build_skb.isra.50+0x1810/0x1810
+[ 74.221132] ? find_held_lock+0x35/0x1d0
+[ 74.225173] ? find_held_lock+0x35/0x1d0
+[ 74.229212] ? tun_get+0x1ab/0x2e0
+[ 74.232736] ? lock_release+0xa40/0xa40
+[ 74.236686] ? __lock_is_held+0xb6/0x140
+[ 74.240726] ? tun_get+0x1d4/0x2e0
+[ 74.244239] ? tun_do_read+0x26c0/0x26c0
+[ 74.248275] ? __check_object_size+0x8b/0x530
+[ 74.252740] ? rcu_note_context_switch+0x710/0x710
+[ 74.257645] tun_chr_write_iter+0xb9/0x160
+[ 74.261854] do_iter_readv_writev+0x55c/0x830
+[ 74.266328] ? vfs_dedupe_file_range+0x8f0/0x8f0
+[ 74.271059] ? rw_verify_area+0xe5/0x2b0
+[ 74.275092] do_iter_write+0x154/0x540
+[ 74.278952] ? dup_iter+0x260/0x260
+[ 74.282552] ? __lock_is_held+0xb6/0x140
+[ 74.286587] vfs_writev+0x18a/0x340
+[ 74.290189] ? __fget_light+0x297/0x380
+[ 74.294134] ? vfs_iter_write+0xb0/0xb0
+[ 74.298084] ? get_unused_fd_flags+0x190/0x190
+[ 74.302640] ? alloc_file+0x27e/0x390
+[ 74.306411] ? _raw_spin_unlock+0x22/0x30
+[ 74.310534] ? exit_to_usermode_loop+0x8c/0x2f0
+[ 74.315180] ? __fdget_pos+0x130/0x190
+[ 74.319041] ? __fdget_raw+0x20/0x20
+[ 74.322727] ? trace_event_raw_event_sys_exit+0x260/0x260
+[ 74.328238] ? selinux_capable+0x40/0x40
+[ 74.332273] do_writev+0xfc/0x2a0
+[ 74.335696] ? do_writev+0xfc/0x2a0
+[ 74.339294] ? vfs_writev+0x340/0x340
+[ 74.343063] ? entry_SYSCALL_64_fastpath+0x5/0xa0
+[ 74.347878] ? trace_hardirqs_on_caller+0x421/0x5c0
+[ 74.352866] SyS_writev+0x27/0x30
+[ 74.356291] entry_SYSCALL_64_fastpath+0x29/0xa0
+[ 74.361019] RIP: 0033:0x453171
+[ 74.364185] RSP: 002b:00007fdbb5762b80 EFLAGS: 00000293 ORIG_RAX: 0000000000000014
+[ 74.371865] RAX: ffffffffffffffda RBX: 000000000071bea0 RCX: 0000000000453171
+[ 74.379108] RDX: 0000000000000001 RSI: 00007fdbb5762bd0 RDI: 0000000000000012
+[ 74.386351] RBP: 00000000000005e6 R08: 0000000000000000 R09: 0000000000000000
+[ 74.393593] R10: 000000000000004a R11: 0000000000000293 R12: 00000000006f7e30
+[ 74.400832] R13: 00000000ffffffff R14: 00007fdbb57636d4 R15: 0000000000000000
+[ 74.408082] Code: 41 f6 87 83 00 00 00 04 75 37 e8 0f 83 95 fc 8b 85 14 fe ff ff 48 8b b5 50 fe ff ff 4c 8d 2c c6 44 8d 60 01 4c 89 e8 48 c1 e8 03 <42> 80 3c 30 00 0f 85 26 03 00 00 4d 89 7d 00 44 89 a5 14 fe ff
+[ 74.427191] RIP: ip6t_do_table+0x132d/0x1a30 RSP: ffff8801d30d6728
+[ 74.433522] ---[ end trace c78919f241c5e206 ]---
+[ 74.438260] Kernel panic - not syncing: Fatal exception in interrupt
+[ 74.445166] Dumping ftrace buffer:
+[ 74.448681] (ftrace buffer empty)
+[ 74.452357] Kernel Offset: disabled
+[ 74.455952] Rebooting in 86400 seconds..
diff --git a/pkg/report/testdata/linux/report/201 b/pkg/report/testdata/linux/report/201
new file mode 100644
index 000000000..a6e165ed0
--- /dev/null
+++ b/pkg/report/testdata/linux/report/201
@@ -0,0 +1,115 @@
+TITLE: general protection fault: 0000 [#1] PREEMPT SMP KASAN
+CORRUPTED: Y
+
+[ 32.536478] binder: BINDER_SET_CONTEXT_MGR already set
+[ 32.549080] binder: 6304:6306 ioctl 40046207 0 returned -16
+[ 32.571039] kasan: CONFIG_KASAN_INLINE enabled
+[ 32.576239] kasan: GPF could be caused by NULL-ptr deref or user memory access
+[ 32.591202] general protection fault: 0000 [#1] PREEMPT SMP KASAN
+[ 32.597451] Dumping ftrace buffer:
+[ 32.600971] (ftrace buffer empty)
+[ 32.604002] BUG: using __this_cpu_read() in preemptible [00000000] code: syz-executor4/6343
+[ 32.604015] caller is __this_cpu_preempt_check+0x1c/0x20
+[ 32.604023] CPU: 1 PID: 6343 Comm: syz-executor4 Not tainted 4.9.80-g550c01d #37
+[ 32.604028] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
+[ 32.604042] ffff8801aea7f658 ffffffff81d94b69 0000000000000001 ffffffff83c18800
+[ 32.604052] ffffffff83f454c0 ffff8801ae996000 0000000000000003 ffff8801aea7f698
+[ 32.604062] ffffffff81dfc144 ffff8801aea7f6b0 ffffffff83f454c0 dffffc0000000000
+[ 32.604065] Call Trace:
+[ 32.604077] [<ffffffff81d94b69>] dump_stack+0xc1/0x128
+[ 32.604087] [<ffffffff81dfc144>] check_preemption_disabled+0x1d4/0x200
+[ 32.604096] [<ffffffff81dfc1ac>] __this_cpu_preempt_check+0x1c/0x20
+[ 32.604105] [<ffffffff833fcdd8>] ipcomp_init_state+0x188/0x930
+[ 32.604113] [<ffffffff83512ee5>] ipcomp6_init_state+0xb5/0x820
+[ 32.604119] [<ffffffff833db443>] ? __xfrm_init_state+0x363/0xb30
+[ 32.604126] [<ffffffff833db4c7>] __xfrm_init_state+0x3e7/0xb30
+[ 32.604132] [<ffffffff833dbc2a>] xfrm_init_state+0x1a/0x20
+[ 32.604140] [<ffffffff83575b69>] pfkey_add+0x1fb9/0x3470
+[ 32.604147] [<ffffffff83573bb0>] ? pfkey_delete+0x360/0x360
+[ 32.604153] [<ffffffff8356af00>] ? pfkey_seq_stop+0x80/0x80
+[ 32.604162] [<ffffffff82ef282a>] ? __skb_clone+0x24a/0x7d0
+[ 32.604168] [<ffffffff83573bb0>] ? pfkey_delete+0x360/0x360
+[ 32.604175] [<ffffffff8356d65b>] pfkey_process+0x68b/0x750
+[ 32.604182] [<ffffffff8356cfd0>] ? pfkey_send_new_mapping+0x11b0/0x11b0
+[ 32.604190] [<ffffffff8356eeb9>] pfkey_sendmsg+0x3a9/0x760
+[ 32.604196] [<ffffffff8356eb10>] ? pfkey_spdget+0x820/0x820
+[ 32.604204] [<ffffffff82ed7baa>] sock_sendmsg+0xca/0x110
+[ 32.604210] [<ffffffff82ed97a1>] ___sys_sendmsg+0x6d1/0x7e0
+[ 32.604218] [<ffffffff82ed90d0>] ? copy_msghdr_from_user+0x550/0x550
+[ 32.604226] [<ffffffff812e4238>] ? do_futex+0x3f8/0x15c0
+[ 32.604233] [<ffffffff815d13c7>] ? __fget+0x47/0x3a0
+[ 32.604240] [<ffffffff815d1581>] ? __fget+0x201/0x3a0
+[ 32.604246] [<ffffffff815d15a8>] ? __fget+0x228/0x3a0
+[ 32.604252] [<ffffffff815d13c7>] ? __fget+0x47/0x3a0
+[ 32.604258] [<ffffffff815d18e8>] ? __fget_light+0x188/0x1e0
+[ 32.604264] [<ffffffff815d1958>] ? __fdget+0x18/0x20
+[ 32.604272] [<ffffffff82ed5a58>] ? sockfd_lookup_light+0x118/0x160
+[ 32.604279] [<ffffffff82edb7d6>] __sys_sendmsg+0xd6/0x190
+[ 32.604285] [<ffffffff82edb700>] ? SyS_shutdown+0x1b0/0x1b0
+[ 32.604292] [<ffffffff812e5ef9>] ? compat_SyS_futex+0x1f9/0x2a0
+[ 32.604298] [<ffffffff815d34ad>] ? fd_install+0x4d/0x60
+[ 32.604310] [<ffffffff82eda560>] ? move_addr_to_kernel+0x50/0x50
+[ 32.604318] [<ffffffff8167cffc>] ? compat_SyS_ioctl+0x8c/0x2050
+[ 32.604328] [<ffffffff82fde04a>] compat_SyS_sendmsg+0x2a/0x40
+[ 32.604337] [<ffffffff82fde020>] ? compat_SyS_getsockopt+0x2a0/0x2a0
+[ 32.604346] [<ffffffff81006fc7>] do_fast_syscall_32+0x2f7/0x890
+[ 32.604354] [<ffffffff81003036>] ? trace_hardirqs_off_thunk+0x1a/0x1c
+[ 32.604365] [<ffffffff838b4d34>] entry_SYSENTER_compat+0x74/0x83
+[ 32.889740] Modules linked in:
+[ 32.893039] CPU: 0 PID: 6331 Comm: syz-executor6 Not tainted 4.9.80-g550c01d #37
+[ 32.900547] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
+[ 32.909885] task: ffff8801aea23000 task.stack: ffff8801ae9e8000
+[ 32.915914] RIP: 0010:[<ffffffff8144ee81>] [<ffffffff8144ee81>] __free_pages+0x21/0x80
+[ 32.924152] RSP: 0018:ffff8801ae9ef940 EFLAGS: 00010a07
+[ 32.929576] RAX: dffffc0000000000 RBX: dead4ead00000000 RCX: ffffffff8266806b
+[ 32.936828] RDX: 1bd5a9d5a0000003 RSI: 0000000000000002 RDI: dead4ead0000001c
+[ 32.944072] RBP: ffff8801ae9ef950 R08: 0000000048000000 R09: 0000000000001e30
+[ 32.951313] R10: 0000000000002100 R11: ffff8801aea23000 R12: 0000000000000004
+[ 32.958566] R13: 0000000000000020 R14: ffff8801c473a100 R15: dffffc0000000000
+[ 32.965824] FS: 0000000000000000(0000) GS:ffff8801db200000(0063) knlGS:00000000f6fb9b40
+[ 32.974022] CS: 0010 DS: 002b ES: 002b CR0: 0000000080050033
+[ 32.979874] CR2: 00000000f6f1cbf0 CR3: 00000001c46f0000 CR4: 0000000000160670
+[ 32.987118] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
+[ 32.994364] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
+[ 33.001603] Stack:
+[ 33.003724] 0000000000000001 ffff8801c473a258 ffff8801ae9ef9b0 ffffffff82668091
+[ 33.011702] ffff8801c473a270 ffffed00388e744b ffffed00388e744e ffff8801c473a268
+[ 33.019679] dead4ead00000000 ffff8801c473a240 0000000000000000 0000000000000000
+[ 33.027659] Call Trace:
+[ 33.030221] [<ffffffff82668091>] sg_remove_scat.isra.19+0x1c1/0x2d0
+[ 33.036687] [<ffffffff82668455>] sg_finish_rem_req+0x2b5/0x340
+[ 33.042715] [<ffffffff8266866d>] sg_new_read.isra.20+0x18d/0x3e0
+[ 33.048920] [<ffffffff8266a187>] sg_read+0x8b7/0x1440
+[ 33.054183] [<ffffffff826698d0>] ? sg_proc_seq_show_debug+0xd90/0xd90
+[ 33.060822] [<ffffffff81644640>] ? fsnotify+0xf30/0xf30
+[ 33.066245] [<ffffffff81bdc219>] ? avc_policy_seqno+0x9/0x20
+[ 33.072109] [<ffffffff8156cc21>] do_loop_readv_writev.part.17+0x141/0x1e0
+[ 33.079110] [<ffffffff81bd32d9>] ? security_file_permission+0x89/0x1e0
+[ 33.085835] [<ffffffff826698d0>] ? sg_proc_seq_show_debug+0xd90/0xd90
+[ 33.092472] [<ffffffff826698d0>] ? sg_proc_seq_show_debug+0xd90/0xd90
+[ 33.099113] [<ffffffff81571b42>] compat_do_readv_writev+0x522/0x760
+[ 33.105577] [<ffffffff81571620>] ? do_pwritev+0x1a0/0x1a0
+[ 33.111196] [<ffffffff812e3e40>] ? exit_robust_list+0x230/0x230
+[ 33.117318] [<ffffffff81dfbfab>] ? check_preemption_disabled+0x3b/0x200
+[ 33.124141] [<ffffffff815d1581>] ? __fget+0x201/0x3a0
+[ 33.129386] [<ffffffff815d15a8>] ? __fget+0x228/0x3a0
+[ 33.134632] [<ffffffff815d13c7>] ? __fget+0x47/0x3a0
+[ 33.139801] [<ffffffff81571e63>] compat_readv+0xe3/0x150
+[ 33.145325] [<ffffffff81571fc4>] do_compat_readv+0xf4/0x1d0
+[ 33.145334] [<ffffffff81571ed0>] ? compat_readv+0x150/0x150
+[ 33.145342] [<ffffffff81573be0>] ? SyS_read+0x1b0/0x1b0
+[ 33.145351] [<ffffffff8167cffc>] ? compat_SyS_ioctl+0x8c/0x2050
+[ 33.145359] [<ffffffff81574536>] compat_SyS_readv+0x26/0x30
+[ 33.145367] [<ffffffff81574510>] ? SyS_pwritev2+0x80/0x80
+[ 33.145376] [<ffffffff81006fc7>] do_fast_syscall_32+0x2f7/0x890
+[ 33.145383] [<ffffffff81003036>] ? trace_hardirqs_off_thunk+0x1a/0x1c
+[ 33.145393] [<ffffffff838b4d34>] entry_SYSENTER_compat+0x74/0x83
+[ 33.145509] Code: e9 27 fc ff ff 0f 1f 44 00 00 48 b8 00 00 00 00 00 fc ff df 55 48 89 e5 53 48 89 fb 48 83 c7 1c 48 89 fa 48 83 ec 08 48 c1 ea 03 <0f> b6 14 02 48 89 f8 83 e0 07 83 c0 03 38 d0 7c 04 84 d2 75 3d
+[ 33.145518] RIP [<ffffffff8144ee81>] __free_pages+0x21/0x80
+[ 33.145520] RSP <ffff8801ae9ef940>
+[ 33.153370] ---[ end trace 7176eb4430fb7fce ]---
+[ 33.153375] Kernel panic - not syncing: Fatal exception
+[ 33.153827] Dumping ftrace buffer:
+[ 33.153830] (ftrace buffer empty)
+[ 33.153832] Kernel Offset: disabled
+[ 33.256349] Rebooting in 86400 seconds..
diff --git a/pkg/report/testdata/linux/report/57 b/pkg/report/testdata/linux/report/57
index 21d3e6779..1dfcff097 100644
--- a/pkg/report/testdata/linux/report/57
+++ b/pkg/report/testdata/linux/report/57
@@ -1,4 +1,5 @@
-TITLE: INFO: rcu detected stall in __sctp_write_space
+TITLE: INFO: rcu_sched self-detected stall on CPU
+CORRUPTED: Y
[ 277.780013] INFO: rcu_sched self-detected stall on CPU
[ 277.781045] INFO: rcu_sched detected stalls on CPUs/tasks: