aboutsummaryrefslogtreecommitdiffstats
path: root/pkg
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2019-05-20 18:30:54 +0200
committerDmitry Vyukov <dvyukov@google.com>2019-05-20 19:40:20 +0200
commit4d4a4420e72dba0231c8ce5921eb75dddab88747 (patch)
tree34f2ae02ce4ce3db0ac7aa3d86ac159866834b1f /pkg
parentcddddce85a40e86cef84d52e851e0c7a16ead437 (diff)
pkg/report: add Type/Frame to Report
In several places we do special handling for some crash types. Currently we compare report title with magic strings, which is error-prone. Add explicit Type to reports.
Diffstat (limited to 'pkg')
-rw-r--r--pkg/instance/instance.go2
-rw-r--r--pkg/report/fuchsia.go2
-rw-r--r--pkg/report/linux.go6
-rw-r--r--pkg/report/report.go58
-rw-r--r--pkg/report/report_test.go124
-rw-r--r--pkg/report/testdata/fuchsia/report/101
-rw-r--r--pkg/report/testdata/fuchsia/report/301
-rw-r--r--pkg/report/testdata/linux/report/1261
-rw-r--r--pkg/report/testdata/linux/report/1271
-rw-r--r--pkg/report/testdata/linux/report/1381
-rw-r--r--pkg/report/testdata/linux/report/1451
-rw-r--r--pkg/report/testdata/linux/report/1511
-rw-r--r--pkg/report/testdata/linux/report/1711
-rw-r--r--pkg/report/testdata/linux/report/1761
-rw-r--r--pkg/report/testdata/linux/report/1781
-rw-r--r--pkg/report/testdata/linux/report/1791
-rw-r--r--pkg/report/testdata/linux/report/2071
-rw-r--r--pkg/report/testdata/linux/report/2351
-rw-r--r--pkg/report/testdata/linux/report/2371
-rw-r--r--pkg/report/testdata/linux/report/2541
-rw-r--r--pkg/report/testdata/linux/report/2551
-rw-r--r--pkg/report/testdata/linux/report/2631
-rw-r--r--pkg/report/testdata/linux/report/2641
-rw-r--r--pkg/report/testdata/linux/report/2651
-rw-r--r--pkg/report/testdata/linux/report/2661
-rw-r--r--pkg/report/testdata/linux/report/2671
-rw-r--r--pkg/report/testdata/linux/report/2681
-rw-r--r--pkg/report/testdata/linux/report/2691
-rw-r--r--pkg/report/testdata/linux/report/2701
-rw-r--r--pkg/report/testdata/linux/report/2711
-rw-r--r--pkg/report/testdata/linux/report/2721
-rw-r--r--pkg/report/testdata/linux/report/2731
-rw-r--r--pkg/report/testdata/linux/report/2741
-rw-r--r--pkg/report/testdata/linux/report/2751
-rw-r--r--pkg/report/testdata/linux/report/2761
-rw-r--r--pkg/report/testdata/linux/report/2771
-rw-r--r--pkg/report/testdata/linux/report/2781
-rw-r--r--pkg/report/testdata/linux/report/2791
-rw-r--r--pkg/report/testdata/linux/report/2801
-rw-r--r--pkg/report/testdata/linux/report/2811
-rw-r--r--pkg/report/testdata/linux/report/2821
-rw-r--r--pkg/report/testdata/linux/report/2831
-rw-r--r--pkg/report/testdata/linux/report/2841
-rw-r--r--pkg/report/testdata/linux/report/2851
-rw-r--r--pkg/report/testdata/linux/report/2861
-rw-r--r--pkg/report/testdata/linux/report/2871
-rw-r--r--pkg/report/testdata/linux/report/2881
-rw-r--r--pkg/report/testdata/linux/report/2891
-rw-r--r--pkg/report/testdata/linux/report/2901
-rw-r--r--pkg/report/testdata/linux/report/2911
-rw-r--r--pkg/report/testdata/linux/report/2921
-rw-r--r--pkg/report/testdata/linux/report/2931
-rw-r--r--pkg/report/testdata/linux/report/2941
-rw-r--r--pkg/report/testdata/linux/report/2951
-rw-r--r--pkg/report/testdata/linux/report/2961
-rw-r--r--pkg/report/testdata/linux/report/2971
-rw-r--r--pkg/report/testdata/linux/report/2981
-rw-r--r--pkg/report/testdata/linux/report/2991
-rw-r--r--pkg/report/testdata/linux/report/3001
-rw-r--r--pkg/report/testdata/linux/report/3091
-rw-r--r--pkg/report/testdata/linux/report/3101
-rw-r--r--pkg/report/testdata/linux/report/3111
-rw-r--r--pkg/report/testdata/linux/report/3121
-rw-r--r--pkg/report/testdata/linux/report/3171
-rw-r--r--pkg/report/testdata/linux/report/3181
-rw-r--r--pkg/report/testdata/linux/report/3491
-rw-r--r--pkg/report/testdata/linux/report/3501
-rw-r--r--pkg/report/testdata/linux/report/3651
-rw-r--r--pkg/report/testdata/linux/report/3671
-rw-r--r--pkg/report/testdata/linux/report/3681
-rw-r--r--pkg/report/testdata/linux/report/3692
-rw-r--r--pkg/report/testdata/linux/report/3731
-rw-r--r--pkg/report/testdata/linux/report/3781
-rw-r--r--pkg/report/testdata/linux/report/3791
-rw-r--r--pkg/report/testdata/linux/report/3851
-rw-r--r--pkg/report/testdata/linux/report/3861
-rw-r--r--pkg/report/testdata/linux/report/511
-rw-r--r--pkg/report/testdata/linux/report/521
-rw-r--r--pkg/report/testdata/linux/report/531
-rw-r--r--pkg/report/testdata/linux/report/541
-rw-r--r--pkg/report/testdata/linux/report/551
-rw-r--r--pkg/report/testdata/linux/report/571
-rw-r--r--pkg/report/testdata/linux/report/581
-rw-r--r--pkg/report/testdata/linux/report/591
-rw-r--r--pkg/report/testdata/linux/report/601
-rw-r--r--pkg/report/testdata/linux/report/611
-rw-r--r--pkg/report/testdata/linux/report/621
-rw-r--r--pkg/report/testdata/linux/report/631
-rw-r--r--pkg/report/testdata/linux/report/651
-rw-r--r--pkg/report/testdata/linux/report/671
-rw-r--r--pkg/report/testdata/linux/report/691
-rw-r--r--pkg/report/testdata/linux/report/71
-rw-r--r--pkg/report/testdata/linux/report/701
-rw-r--r--pkg/report/testdata/linux/report/711
-rw-r--r--pkg/report/testdata/linux/report/721
-rw-r--r--pkg/report/testdata/linux/report/731
-rw-r--r--pkg/report/testdata/linux/report/741
97 files changed, 231 insertions, 54 deletions
diff --git a/pkg/instance/instance.go b/pkg/instance/instance.go
index 960272245..4bd483d61 100644
--- a/pkg/instance/instance.go
+++ b/pkg/instance/instance.go
@@ -226,7 +226,7 @@ func (inst *inst) test() error {
if bootErr, ok := err.(vm.BootErrorer); ok {
testErr.Title, testErr.Output = bootErr.BootError()
rep := inst.reporter.Parse(testErr.Output)
- if rep != nil && rep.Title == report.UnexpectedKernelReboot {
+ if rep != nil && rep.Type == report.UnexpectedReboot {
// Avoid detecting any boot crash as "unexpected kernel reboot".
output := testErr.Output[rep.EndPos:]
if pos := bytes.IndexByte(testErr.Output[rep.StartPos:], '\n'); pos != -1 {
diff --git a/pkg/report/fuchsia.go b/pkg/report/fuchsia.go
index cafef6bd2..b7399cc5c 100644
--- a/pkg/report/fuchsia.go
+++ b/pkg/report/fuchsia.go
@@ -287,7 +287,7 @@ var zirconOopses = []*oops{
[]oopsFormat{
{
title: compile("welcome to Zircon"),
- fmt: UnexpectedKernelReboot,
+ fmt: unexpectedKernelReboot,
noStackTrace: true,
},
},
diff --git a/pkg/report/linux.go b/pkg/report/linux.go
index d414395cb..3b1e96581 100644
--- a/pkg/report/linux.go
+++ b/pkg/report/linux.go
@@ -791,8 +791,6 @@ var linuxStackParams = &stackParams{
},
}
-const MemoryLeakPrefix = "memory leak in "
-
func warningStackFmt(skip ...string) *stackFmt {
return &stackFmt{
// In newer kernels WARNING traps and actual stack starts after invalid_op frame,
@@ -996,7 +994,7 @@ var linuxOopses = []*oops{
},
{
title: compile("BUG: memory leak"),
- fmt: MemoryLeakPrefix + "%[1]v",
+ fmt: memoryLeakPrefix + "%[1]v",
stack: &stackFmt{
parts: []*regexp.Regexp{
compile("backtrace:"),
@@ -1484,7 +1482,7 @@ var linuxOopses = []*oops{
[]oopsFormat{
{
title: compile("Booting the kernel."),
- fmt: UnexpectedKernelReboot,
+ fmt: unexpectedKernelReboot,
noStackTrace: true,
},
},
diff --git a/pkg/report/report.go b/pkg/report/report.go
index 8ca14cb10..ffed1578e 100644
--- a/pkg/report/report.go
+++ b/pkg/report/report.go
@@ -31,6 +31,10 @@ type Reporter interface {
type Report struct {
// Title contains a representative description of the first oops.
Title string
+ // Bug type (e.g. hang, memory leak, etc).
+ Type Type
+ // The indicative function name.
+ Frame string
// Report contains whole oops text.
Report []byte
// Output contains whole raw console output as passed to Reporter.Parse.
@@ -52,6 +56,30 @@ type Report struct {
reportPrefixLen int
}
+type Type int
+
+const (
+ Unknown Type = iota
+ Hang
+ MemoryLeak
+ UnexpectedReboot
+)
+
+func (t Type) String() string {
+ switch t {
+ case Unknown:
+ return "UNKNOWN"
+ case Hang:
+ return "HANG"
+ case MemoryLeak:
+ return "LEAK"
+ case UnexpectedReboot:
+ return "REBOOT"
+ default:
+ panic("unknown report type")
+ }
+}
+
// NewReporter creates reporter for the specified OS/Type.
func NewReporter(cfg *mgrconfig.Config) (Reporter, error) {
typ := cfg.TargetOS
@@ -81,7 +109,10 @@ func NewReporter(cfg *mgrconfig.Config) (Reporter, error) {
return &reporterWrapper{rep, supps, typ}, nil
}
-const UnexpectedKernelReboot = "unexpected kernel reboot"
+const (
+ unexpectedKernelReboot = "unexpected kernel reboot"
+ memoryLeakPrefix = "memory leak in "
+)
var ctors = map[string]fn{
"akaros": ctorAkaros,
@@ -124,9 +155,31 @@ func (wrap *reporterWrapper) Parse(output []byte) *Report {
if bytes.Contains(rep.Output, gceConsoleHangup) {
rep.Corrupted = true
}
+ rep.Type = extractReportType(rep)
+ if match := reportFrameRe.FindStringSubmatch(rep.Title); match != nil {
+ rep.Frame = match[1]
+ }
return rep
}
+func extractReportType(rep *Report) Type {
+ // Type/frame extraction logic should be integrated with oops types.
+ // But for now we do this more ad-hoc analysis here to at least isolate
+ // the rest of the code base from report parsing.
+ if rep.Title == unexpectedKernelReboot {
+ return UnexpectedReboot
+ }
+ if strings.HasPrefix(rep.Title, memoryLeakPrefix) {
+ return MemoryLeak
+ }
+ if strings.HasPrefix(rep.Title, "INFO: rcu detected stall") ||
+ strings.HasPrefix(rep.Title, "INFO: task hung") ||
+ strings.HasPrefix(rep.Title, "BUG: soft lockup") {
+ return Hang
+ }
+ return Unknown
+}
+
func IsSuppressed(reporter Reporter, output []byte) bool {
return matchesAny(output, reporter.(*reporterWrapper).suppressions) ||
bytes.Contains(output, gceConsoleHangup)
@@ -515,5 +568,6 @@ func replace(where []byte, start, end int, what []byte) []byte {
}
var (
- filenameRe = regexp.MustCompile(`[a-zA-Z0-9_\-\./]*[a-zA-Z0-9_\-]+\.(c|h):[0-9]+`)
+ filenameRe = regexp.MustCompile(`[a-zA-Z0-9_\-\./]*[a-zA-Z0-9_\-]+\.(c|h):[0-9]+`)
+ reportFrameRe = regexp.MustCompile(`.* in ([a-zA-Z0-9_]+)`)
)
diff --git a/pkg/report/report_test.go b/pkg/report/report_test.go
index 019fc9817..4d3137175 100644
--- a/pkg/report/report_test.go
+++ b/pkg/report/report_test.go
@@ -29,6 +29,8 @@ type ParseTest struct {
FileName string
Log []byte
Title string
+ Type Type
+ Frame string
StartLine string
EndLine string
Corrupted bool
@@ -57,44 +59,12 @@ func testParseFile(t *testing.T, reporter Reporter, fn string) {
for s.Scan() {
switch phase {
case phaseHeaders:
- const (
- titlePrefix = "TITLE: "
- startPrefix = "START: "
- endPrefix = "END: "
- corruptedPrefix = "CORRUPTED: "
- suppressedPrefix = "SUPPRESSED: "
- )
- switch ln := s.Text(); {
- case strings.HasPrefix(ln, "#"):
- case strings.HasPrefix(ln, titlePrefix):
- test.Title = ln[len(titlePrefix):]
- case strings.HasPrefix(ln, startPrefix):
- test.StartLine = ln[len(startPrefix):]
- case strings.HasPrefix(ln, endPrefix):
- test.EndLine = ln[len(endPrefix):]
- case strings.HasPrefix(ln, corruptedPrefix):
- switch v := ln[len(corruptedPrefix):]; v {
- case "Y":
- test.Corrupted = true
- case "N":
- test.Corrupted = false
- default:
- t.Fatalf("unknown CORRUPTED value %q", v)
- }
- case strings.HasPrefix(ln, suppressedPrefix):
- switch v := ln[len(suppressedPrefix):]; v {
- case "Y":
- test.Suppressed = true
- case "N":
- test.Suppressed = false
- default:
- t.Fatalf("unknown SUPPRESSED value %q", v)
- }
- case ln == "":
+ ln := s.Text()
+ if ln == "" {
phase = phaseLog
- default:
- t.Fatalf("unknown header field %q", ln)
+ continue
}
+ parseHeaderLine(t, test, ln)
case phaseLog:
if prevEmptyLine && string(s.Bytes()) == "REPORT:" {
test.HasReport = true
@@ -122,6 +92,60 @@ func testParseFile(t *testing.T, reporter Reporter, fn string) {
testParseImpl(t, reporter, test)
}
+func parseHeaderLine(t *testing.T, test *ParseTest, ln string) {
+ const (
+ titlePrefix = "TITLE: "
+ typePrefix = "TYPE: "
+ framePrefix = "FRAME: "
+ startPrefix = "START: "
+ endPrefix = "END: "
+ corruptedPrefix = "CORRUPTED: "
+ suppressedPrefix = "SUPPRESSED: "
+ )
+ switch {
+ case strings.HasPrefix(ln, "#"):
+ case strings.HasPrefix(ln, titlePrefix):
+ test.Title = ln[len(titlePrefix):]
+ case strings.HasPrefix(ln, typePrefix):
+ switch v := ln[len(typePrefix):]; v {
+ case Hang.String():
+ test.Type = Hang
+ case MemoryLeak.String():
+ test.Type = MemoryLeak
+ case UnexpectedReboot.String():
+ test.Type = UnexpectedReboot
+ default:
+ t.Fatalf("unknown TYPE value %q", v)
+ }
+ case strings.HasPrefix(ln, framePrefix):
+ test.Frame = ln[len(framePrefix):]
+ case strings.HasPrefix(ln, startPrefix):
+ test.StartLine = ln[len(startPrefix):]
+ case strings.HasPrefix(ln, endPrefix):
+ test.EndLine = ln[len(endPrefix):]
+ case strings.HasPrefix(ln, corruptedPrefix):
+ switch v := ln[len(corruptedPrefix):]; v {
+ case "Y":
+ test.Corrupted = true
+ case "N":
+ test.Corrupted = false
+ default:
+ t.Fatalf("unknown CORRUPTED value %q", v)
+ }
+ case strings.HasPrefix(ln, suppressedPrefix):
+ switch v := ln[len(suppressedPrefix):]; v {
+ case "Y":
+ test.Suppressed = true
+ case "N":
+ test.Suppressed = false
+ default:
+ t.Fatalf("unknown SUPPRESSED value %q", v)
+ }
+ default:
+ t.Fatalf("unknown header field %q", ln)
+ }
+}
+
func testParseImpl(t *testing.T, reporter Reporter, test *ParseTest) {
rep := reporter.Parse(test.Log)
containsCrash := reporter.ContainsCrash(test.Log)
@@ -135,21 +159,24 @@ func testParseImpl(t *testing.T, reporter Reporter, test *ParseTest) {
if rep != nil && rep.Title == "" {
t.Fatalf("found crash, but title is empty")
}
- title, corrupted, corruptedReason, suppressed := "", false, "", false
+ title, corrupted, corruptedReason, suppressed, typ, frame := "", false, "", false, Unknown, ""
if rep != nil {
title = rep.Title
corrupted = rep.Corrupted
corruptedReason = rep.CorruptedReason
suppressed = rep.Suppressed
+ typ = rep.Type
+ frame = rep.Frame
}
- if title != test.Title || corrupted != test.Corrupted || suppressed != test.Suppressed {
- if *flagUpdate && test.StartLine == "" && test.EndLine == "" {
- updateReportTest(t, test, title, corrupted, suppressed)
+ if title != test.Title || corrupted != test.Corrupted || suppressed != test.Suppressed ||
+ typ != test.Type || test.Frame != "" && frame != test.Frame {
+ if *flagUpdate && test.StartLine+test.EndLine == "" {
+ updateReportTest(t, test, title, corrupted, suppressed, typ, frame)
}
- t.Fatalf("want:\nTITLE: %s\nCORRUPTED: %v\nSUPPRESSED: %v\n"+
- "got:\nTITLE: %s\nCORRUPTED: %v (%v)\nSUPPRESSED: %v\n",
- test.Title, test.Corrupted, test.Suppressed,
- title, corrupted, corruptedReason, suppressed)
+ t.Fatalf("want:\nTITLE: %s\nTYPE: %v\nFRAME: %v\nCORRUPTED: %v\nSUPPRESSED: %v\n"+
+ "got:\nTITLE: %s\nTYPE: %v\nFRAME: %v\nCORRUPTED: %v (%v)\nSUPPRESSED: %v\n",
+ test.Title, test.Type, test.Frame, test.Corrupted, test.Suppressed,
+ title, typ, frame, corrupted, corruptedReason, suppressed)
}
if title != "" && len(rep.Report) == 0 {
t.Fatalf("found crash message but report is empty")
@@ -199,9 +226,16 @@ func checkReport(t *testing.T, rep *Report, test *ParseTest) {
}
}
-func updateReportTest(t *testing.T, test *ParseTest, title string, corrupted, suppressed bool) {
+func updateReportTest(t *testing.T, test *ParseTest, title string, corrupted, suppressed bool,
+ typ Type, frame string) {
buf := new(bytes.Buffer)
fmt.Fprintf(buf, "TITLE: %v\n", title)
+ if typ != Unknown {
+ fmt.Fprintf(buf, "TYPE: %v\n", typ)
+ }
+ if test.Frame != "" {
+ fmt.Fprintf(buf, "FRAME: %v\n", frame)
+ }
if corrupted {
fmt.Fprintf(buf, "CORRUPTED: Y\n")
}
diff --git a/pkg/report/testdata/fuchsia/report/10 b/pkg/report/testdata/fuchsia/report/10
index cef441e81..4a75fcdde 100644
--- a/pkg/report/testdata/fuchsia/report/10
+++ b/pkg/report/testdata/fuchsia/report/10
@@ -1,4 +1,5 @@
TITLE: unexpected kernel reboot
+TYPE: REBOOT
[00037.711] 07800.07847> PageFault: 500574 free pages
[00037.712] 07800.07847> PageFault: MemoryUsed: proc 1127 26M 'fshost'
diff --git a/pkg/report/testdata/fuchsia/report/30 b/pkg/report/testdata/fuchsia/report/30
index c44516351..a54fb20b0 100644
--- a/pkg/report/testdata/fuchsia/report/30
+++ b/pkg/report/testdata/fuchsia/report/30
@@ -1,4 +1,5 @@
TITLE: unexpected kernel reboot
+TYPE: REBOOT
START: [00000.000] 00000.00000> welcome to Zircon
000> PMM: boot reserve marking WIRED [0x100000, 0x2b5fff]
diff --git a/pkg/report/testdata/linux/report/126 b/pkg/report/testdata/linux/report/126
index 507ad8234..ea37de487 100644
--- a/pkg/report/testdata/linux/report/126
+++ b/pkg/report/testdata/linux/report/126
@@ -1,4 +1,5 @@
TITLE: memory leak in corrupted
+TYPE: LEAK
CORRUPTED: Y
2018/01/09 14:28:48 BUG: memory leak
diff --git a/pkg/report/testdata/linux/report/127 b/pkg/report/testdata/linux/report/127
index 698cecb76..b095c663f 100644
--- a/pkg/report/testdata/linux/report/127
+++ b/pkg/report/testdata/linux/report/127
@@ -1,4 +1,5 @@
TITLE: unexpected kernel reboot
+TYPE: REBOOT
tkill(r8, 0x13)
mmap(&(0x7f0000000000/0x1000)=nil, 0x1000, 0x3, 0x32, 0xffffffffffffffff, 0x0)
diff --git a/pkg/report/testdata/linux/report/138 b/pkg/report/testdata/linux/report/138
index 7fff497bb..9c3c4e058 100644
--- a/pkg/report/testdata/linux/report/138
+++ b/pkg/report/testdata/linux/report/138
@@ -1,4 +1,5 @@
TITLE: INFO: task hung in corrupted
+TYPE: HANG
CORRUPTED: Y
[ 369.632194] INFO: task syz-executor1:12659 blocked for more than 120 seconds.
diff --git a/pkg/report/testdata/linux/report/145 b/pkg/report/testdata/linux/report/145
index 72f3df499..0f57b8077 100644
--- a/pkg/report/testdata/linux/report/145
+++ b/pkg/report/testdata/linux/report/145
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in ipv6_rcv
+TYPE: HANG
[ 323.830017] INFO: rcu_sched detected stalls on CPUs/tasks:
[ 323.835676] (detected by 0, t=125007 jiffies, g=66299, c=66298, q=40)
diff --git a/pkg/report/testdata/linux/report/151 b/pkg/report/testdata/linux/report/151
index 9783fb5cd..d13ef9bc3 100644
--- a/pkg/report/testdata/linux/report/151
+++ b/pkg/report/testdata/linux/report/151
@@ -1,4 +1,5 @@
TITLE: memory leak in new_inode_pseudo
+TYPE: LEAK
2018/01/09 14:28:48 BUG: memory leak
unreferenced object 0xffff88007658a9e0 (size 944):
diff --git a/pkg/report/testdata/linux/report/171 b/pkg/report/testdata/linux/report/171
index 089735f0d..411e69f31 100644
--- a/pkg/report/testdata/linux/report/171
+++ b/pkg/report/testdata/linux/report/171
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in snd_pcm_oss_write
+TYPE: HANG
[ 196.114026] INFO: rcu_sched detected stalls on CPUs/tasks:
[ 196.119690] (detected by 0, t=125002 jiffies, g=15654, c=15653, q=133)
diff --git a/pkg/report/testdata/linux/report/176 b/pkg/report/testdata/linux/report/176
index c809b0c1e..e6fd6f28d 100644
--- a/pkg/report/testdata/linux/report/176
+++ b/pkg/report/testdata/linux/report/176
@@ -1,4 +1,5 @@
TITLE: INFO: task hung in do_exit
+TYPE: HANG
[ 246.752196] INFO: task syz-executor0:10244 blocked for more than 120 seconds.
[ 246.759582] Not tainted 4.15.0-rc8+ #269
diff --git a/pkg/report/testdata/linux/report/178 b/pkg/report/testdata/linux/report/178
index 818a05bd3..6769cd513 100644
--- a/pkg/report/testdata/linux/report/178
+++ b/pkg/report/testdata/linux/report/178
@@ -1,4 +1,5 @@
TITLE: INFO: task hung in corrupted
+TYPE: HANG
CORRUPTED: Y
[ 861.152227] INFO: task syz-executor3:10976 blocked for more than 120 seconds.
diff --git a/pkg/report/testdata/linux/report/179 b/pkg/report/testdata/linux/report/179
index 4e9d711de..d2b2407a2 100644
--- a/pkg/report/testdata/linux/report/179
+++ b/pkg/report/testdata/linux/report/179
@@ -1,4 +1,5 @@
TITLE: INFO: task hung in input_close_device
+TYPE: HANG
[ 369.632214] INFO: task syz-executor4:8442 blocked for more than 120 seconds.
[ 369.639487] Not tainted 4.15.0-rc7-next-20180115+ #97
diff --git a/pkg/report/testdata/linux/report/207 b/pkg/report/testdata/linux/report/207
index 168b69049..6d6009034 100644
--- a/pkg/report/testdata/linux/report/207
+++ b/pkg/report/testdata/linux/report/207
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in bpf_map_free_deferred
+TYPE: HANG
isob2 login: [ 709.689951] INFO: rcu_sched detected stalls on CPUs/tasks:
[ 709.695737] (detected by 0, t=125002 jiffies, g=6134, c=6133, q=11)
diff --git a/pkg/report/testdata/linux/report/235 b/pkg/report/testdata/linux/report/235
index 08599850f..9ead77a64 100644
--- a/pkg/report/testdata/linux/report/235
+++ b/pkg/report/testdata/linux/report/235
@@ -1,4 +1,5 @@
TITLE: INFO: task hung in corrupted
+TYPE: HANG
CORRUPTED: Y
[ 246.707981] FAULT_INJECTION: forcing a failure.
diff --git a/pkg/report/testdata/linux/report/237 b/pkg/report/testdata/linux/report/237
index c2f92b428..f25046de5 100644
--- a/pkg/report/testdata/linux/report/237
+++ b/pkg/report/testdata/linux/report/237
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in corrupted
+TYPE: HANG
CORRUPTED: Y
INFO: rcu_sched detected stalls on CPUs/tasks:
diff --git a/pkg/report/testdata/linux/report/254 b/pkg/report/testdata/linux/report/254
index 7dcf2902c..07d1efb6c 100644
--- a/pkg/report/testdata/linux/report/254
+++ b/pkg/report/testdata/linux/report/254
@@ -1,4 +1,5 @@
TITLE: INFO: task hung in console_device
+TYPE: HANG
[ 962.377725] INFO: task init:2293 blocked for more than 120 seconds.
[ 962.377730] Not tainted 4.4.132+ #53
diff --git a/pkg/report/testdata/linux/report/255 b/pkg/report/testdata/linux/report/255
index a33925fcb..cad9d3bff 100644
--- a/pkg/report/testdata/linux/report/255
+++ b/pkg/report/testdata/linux/report/255
@@ -1,4 +1,5 @@
TITLE: INFO: task hung in console_device
+TYPE: HANG
[ 722.253714] INFO: task init:1 blocked for more than 120 seconds.
[ 722.253718] Not tainted 4.4.135-g98b6097 #58
diff --git a/pkg/report/testdata/linux/report/263 b/pkg/report/testdata/linux/report/263
index 032cc08d0..bc2777fa1 100644
--- a/pkg/report/testdata/linux/report/263
+++ b/pkg/report/testdata/linux/report/263
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in snd_seq_write
+TYPE: HANG
[ 599.875361] rcu: INFO: rcu_sched self-detected stall on CPU
[ 599.881199] rcu: 0-....: (105000 ticks this GP) idle=2f6/1/0x4000000000000002 softirq=23001/23001 fqs=26239
diff --git a/pkg/report/testdata/linux/report/264 b/pkg/report/testdata/linux/report/264
index 0ca42fafe..49454d603 100644
--- a/pkg/report/testdata/linux/report/264
+++ b/pkg/report/testdata/linux/report/264
@@ -1,4 +1,5 @@
TITLE: BUG: soft lockup in sys_rmdir
+TYPE: HANG
[ 281.646907] watchdog: BUG: soft lockup - CPU#1 stuck for 134s! [syz-executor4:4588]
[ 281.654759] Modules linked in:
diff --git a/pkg/report/testdata/linux/report/265 b/pkg/report/testdata/linux/report/265
index a21cdac90..647054a51 100644
--- a/pkg/report/testdata/linux/report/265
+++ b/pkg/report/testdata/linux/report/265
@@ -1,4 +1,5 @@
TITLE: BUG: soft lockup in snd_rawmidi_write
+TYPE: HANG
[ 352.504666] watchdog: BUG: soft lockup - CPU#1 stuck for 134s! [syz-executor2:10431]
[ 352.512610] Modules linked in:
diff --git a/pkg/report/testdata/linux/report/266 b/pkg/report/testdata/linux/report/266
index 3dc7fadae..b945505ca 100644
--- a/pkg/report/testdata/linux/report/266
+++ b/pkg/report/testdata/linux/report/266
@@ -1,4 +1,5 @@
TITLE: BUG: soft lockup in sys_rmdir
+TYPE: HANG
[ 1144.580971] watchdog: BUG: soft lockup - CPU#1 stuck for 134s! [syz-executor0:4569]
[ 1144.589091] Modules linked in:
diff --git a/pkg/report/testdata/linux/report/267 b/pkg/report/testdata/linux/report/267
index 05dffdc02..311be680d 100644
--- a/pkg/report/testdata/linux/report/267
+++ b/pkg/report/testdata/linux/report/267
@@ -1,4 +1,5 @@
TITLE: BUG: soft lockup in ipv6_rcv
+TYPE: HANG
[ 1290.104807] watchdog: BUG: soft lockup - CPU#1 stuck for 134s! [syz-executor738:4553]
[ 1290.112830] Modules linked in:
diff --git a/pkg/report/testdata/linux/report/268 b/pkg/report/testdata/linux/report/268
index c6492ea7f..b7a3628ea 100644
--- a/pkg/report/testdata/linux/report/268
+++ b/pkg/report/testdata/linux/report/268
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in kvm_vcpu_ioctl
+TYPE: HANG
[ 328.823841] rcu: INFO: rcu_preempt self-detected stall on CPU
[ 328.830097] rcu: 1-...!: (3 GPs behind) idle=19a/1/0x4000000000000002 softirq=12356/12357 fqs=2
diff --git a/pkg/report/testdata/linux/report/269 b/pkg/report/testdata/linux/report/269
index 18a6692ed..20e97052d 100644
--- a/pkg/report/testdata/linux/report/269
+++ b/pkg/report/testdata/linux/report/269
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in kvm_vcpu_ioctl
+TYPE: HANG
[ 351.337674] rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
[ 351.343969] rcu: (detected by 1, t=10502 jiffies, g=9981, q=283)
diff --git a/pkg/report/testdata/linux/report/270 b/pkg/report/testdata/linux/report/270
index 45c7f7ed2..c8c5aac0f 100644
--- a/pkg/report/testdata/linux/report/270
+++ b/pkg/report/testdata/linux/report/270
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in mousedev_write
+TYPE: HANG
[ 489.536147] rcu: INFO: rcu_sched self-detected stall on CPU
[ 489.542259] rcu: 1-....: (104999 ticks this GP) idle=19e/1/0x4000000000000002 softirq=112269/112269 fqs=19579
diff --git a/pkg/report/testdata/linux/report/271 b/pkg/report/testdata/linux/report/271
index b202f8740..d8e3803b1 100644
--- a/pkg/report/testdata/linux/report/271
+++ b/pkg/report/testdata/linux/report/271
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in fuse_dev_release
+TYPE: HANG
[ 629.392020] INFO: rcu_sched detected stalls on CPUs/tasks:
[ 629.397716] (detected by 0, t=105007 jiffies, g=118924, c=118923, q=65)
diff --git a/pkg/report/testdata/linux/report/272 b/pkg/report/testdata/linux/report/272
index c9c6b7b62..a6fa10a28 100644
--- a/pkg/report/testdata/linux/report/272
+++ b/pkg/report/testdata/linux/report/272
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in netlink_sendmsg
+TYPE: HANG
[ 480.173025] INFO: rcu_sched self-detected stall on CPU
[ 480.178536] 1-....: (104999 ticks this GP) idle=002/1/4611686018427387906 softirq=125049/125058 fqs=26224
diff --git a/pkg/report/testdata/linux/report/273 b/pkg/report/testdata/linux/report/273
index 5df0b7ab3..54a97eab9 100644
--- a/pkg/report/testdata/linux/report/273
+++ b/pkg/report/testdata/linux/report/273
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in kvm_vcpu_ioctl
+TYPE: HANG
[ 631.121467] rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
[ 631.127772] rcu: (detected by 0, t=10502 jiffies, g=6833, q=154)
diff --git a/pkg/report/testdata/linux/report/274 b/pkg/report/testdata/linux/report/274
index d20c7e56a..146a2a67d 100644
--- a/pkg/report/testdata/linux/report/274
+++ b/pkg/report/testdata/linux/report/274
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in ipv6_rcv
+TYPE: HANG
[ 842.597024] INFO: rcu_sched self-detected stall on CPU
[ 842.602466] 0-....: (1 GPs behind) idle=222/1/4611686018427387906 softirq=196202/196203 fqs=31202
diff --git a/pkg/report/testdata/linux/report/275 b/pkg/report/testdata/linux/report/275
index bdeb527fd..6fb10cf1b 100644
--- a/pkg/report/testdata/linux/report/275
+++ b/pkg/report/testdata/linux/report/275
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in kvm_vcpu_release
+TYPE: HANG
[ 401.753130] rcu: INFO: rcu_sched detected stalls on CPUs/tasks:
[ 401.759317] rcu: (detected by 0, t=105002 jiffies, g=89793, q=195)
diff --git a/pkg/report/testdata/linux/report/276 b/pkg/report/testdata/linux/report/276
index 037de1360..13cc768eb 100644
--- a/pkg/report/testdata/linux/report/276
+++ b/pkg/report/testdata/linux/report/276
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in __cleanup_mnt
+TYPE: HANG
[ 396.319024] INFO: rcu_sched detected stalls on CPUs/tasks:
[ 396.324708] (detected by 0, t=105007 jiffies, g=54385, c=54384, q=120)
diff --git a/pkg/report/testdata/linux/report/277 b/pkg/report/testdata/linux/report/277
index fa3d208d0..d16b48ad3 100644
--- a/pkg/report/testdata/linux/report/277
+++ b/pkg/report/testdata/linux/report/277
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in ext4_file_write_iter
+TYPE: HANG
[ 587.513972] rcu: INFO: rcu_sched self-detected stall on CPU
[ 587.520042] rcu: 0-....: (105000 ticks this GP) idle=76a/1/0x4000000000000002 softirq=144952/144952 fqs=26032
diff --git a/pkg/report/testdata/linux/report/278 b/pkg/report/testdata/linux/report/278
index 9c27db5cf..8fe831227 100644
--- a/pkg/report/testdata/linux/report/278
+++ b/pkg/report/testdata/linux/report/278
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in sys_futex
+TYPE: HANG
[ 246.173515] rcu: INFO: rcu_sched self-detected stall on CPU
[ 246.179319] rcu: 1-...!: (1 ticks this GP) idle=2e6/1/0x4000000000000002 softirq=21091/21091 fqs=0
diff --git a/pkg/report/testdata/linux/report/279 b/pkg/report/testdata/linux/report/279
index 50d232b8e..8522f554d 100644
--- a/pkg/report/testdata/linux/report/279
+++ b/pkg/report/testdata/linux/report/279
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in kvm_vcpu_ioctl
+TYPE: HANG
[ 1057.417927] rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
[ 1057.424666] rcu: (detected by 1, t=10502 jiffies, g=7113, q=509)
diff --git a/pkg/report/testdata/linux/report/280 b/pkg/report/testdata/linux/report/280
index 6900184cd..b574e0ad3 100644
--- a/pkg/report/testdata/linux/report/280
+++ b/pkg/report/testdata/linux/report/280
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in kvm_vcpu_ioctl
+TYPE: HANG
[ 885.637820] rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
[ 885.644147] rcu: (detected by 1, t=10502 jiffies, g=132945, q=115)
diff --git a/pkg/report/testdata/linux/report/281 b/pkg/report/testdata/linux/report/281
index 6a6616ef7..02758e847 100644
--- a/pkg/report/testdata/linux/report/281
+++ b/pkg/report/testdata/linux/report/281
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in kvm_vcpu_ioctl
+TYPE: HANG
[ 557.780627] rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
[ 557.786921] rcu: (detected by 0, t=10502 jiffies, g=52381, q=77)
diff --git a/pkg/report/testdata/linux/report/282 b/pkg/report/testdata/linux/report/282
index 35fefb6ba..40c080e63 100644
--- a/pkg/report/testdata/linux/report/282
+++ b/pkg/report/testdata/linux/report/282
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in kvm_vcpu_ioctl
+TYPE: HANG
[ 618.102956] overlayfs: failed to resolve './file1': -2
[ 724.054784] rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
diff --git a/pkg/report/testdata/linux/report/283 b/pkg/report/testdata/linux/report/283
index 817459191..39b9b5a3e 100644
--- a/pkg/report/testdata/linux/report/283
+++ b/pkg/report/testdata/linux/report/283
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in snd_pcm_oss_release
+TYPE: HANG
[ 362.024021] INFO: rcu_sched self-detected stall on CPU
[ 362.029432] 1-....: (124999 ticks this GP) idle=f9a/1/4611686018427387906 softirq=73140/73140 fqs=31238
diff --git a/pkg/report/testdata/linux/report/284 b/pkg/report/testdata/linux/report/284
index 9eec50d2b..2f797b951 100644
--- a/pkg/report/testdata/linux/report/284
+++ b/pkg/report/testdata/linux/report/284
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in llcp_sock_sendmsg
+TYPE: HANG
[ 1098.520844] INFO: rcu_sched self-detected stall on CPU
[ 1098.520919] 1-....: (20918 ticks this GP) idle=55a/1/4611686018427387906 softirq=11347/11347 fqs=20240
diff --git a/pkg/report/testdata/linux/report/285 b/pkg/report/testdata/linux/report/285
index 213eccf77..a21fdaf43 100644
--- a/pkg/report/testdata/linux/report/285
+++ b/pkg/report/testdata/linux/report/285
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in sctp_generate_heartbeat_event
+TYPE: HANG
[ 396.651023] INFO: rcu_sched self-detected stall on CPU
[ 396.656449] 0-...!: (120232 ticks this GP) idle=3da/1/4611686018427387906 softirq=85066/85067 fqs=87
diff --git a/pkg/report/testdata/linux/report/286 b/pkg/report/testdata/linux/report/286
index 1e625a25d..93380f65a 100644
--- a/pkg/report/testdata/linux/report/286
+++ b/pkg/report/testdata/linux/report/286
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in sctp_generate_heartbeat_event
+TYPE: HANG
[ 486.569033] INFO: rcu_sched self-detected stall on CPU
[ 486.574490] 0-...!: (124998 ticks this GP) idle=0be/1/4611686018427387908 softirq=15234/15234 fqs=59
diff --git a/pkg/report/testdata/linux/report/287 b/pkg/report/testdata/linux/report/287
index 962845d9f..cf0aaa560 100644
--- a/pkg/report/testdata/linux/report/287
+++ b/pkg/report/testdata/linux/report/287
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in br_handle_frame
+TYPE: HANG
[ 268.109997] bridge0: received packet on bridge_slave_0 with own address as source address
[ 268.110510] bridge0: received packet on bridge_slave_0 with own address as source address
diff --git a/pkg/report/testdata/linux/report/288 b/pkg/report/testdata/linux/report/288
index cde967fb2..945065c8e 100644
--- a/pkg/report/testdata/linux/report/288
+++ b/pkg/report/testdata/linux/report/288
@@ -1,4 +1,5 @@
TITLE: BUG: soft lockup in kvm_vcpu_release
+TYPE: HANG
[ 1342.342232] watchdog: BUG: soft lockup - CPU#0 stuck for 123s! [syz-executor0:8009]
[ 1342.350104] Modules linked in:
diff --git a/pkg/report/testdata/linux/report/289 b/pkg/report/testdata/linux/report/289
index febcd4d79..f37f7b087 100644
--- a/pkg/report/testdata/linux/report/289
+++ b/pkg/report/testdata/linux/report/289
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in ext4_filemap_fault
+TYPE: HANG
[ 2355.201776] INFO: rcu_preempt detected stalls on CPUs/tasks:
[ 2355.201784] Tasks blocked on level-0 rcu_node (CPUs 0-1): P2270
diff --git a/pkg/report/testdata/linux/report/290 b/pkg/report/testdata/linux/report/290
index f5784c806..694a86105 100644
--- a/pkg/report/testdata/linux/report/290
+++ b/pkg/report/testdata/linux/report/290
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in ipv6_rcv
+TYPE: HANG
[ 757.882665] INFO: rcu_preempt self-detected stall on CPU
[ 757.888422] 0-...: (1 GPs behind) idle=c37/140000000000001/0 softirq=7357/7358 fqs=12499
diff --git a/pkg/report/testdata/linux/report/291 b/pkg/report/testdata/linux/report/291
index 47506e9d2..865da9943 100644
--- a/pkg/report/testdata/linux/report/291
+++ b/pkg/report/testdata/linux/report/291
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in rmdir
+TYPE: HANG
[ 539.960575] INFO: rcu_preempt detected stalls on CPUs/tasks:
[ 539.960585] (detected by 0, t=10502 jiffies, g=3970, c=3969, q=379)
diff --git a/pkg/report/testdata/linux/report/292 b/pkg/report/testdata/linux/report/292
index f8e401066..27108c69b 100644
--- a/pkg/report/testdata/linux/report/292
+++ b/pkg/report/testdata/linux/report/292
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in wb_workfn
+TYPE: HANG
[ 420.341960] INFO: rcu_preempt detected stalls on CPUs/tasks:
[ 420.347923] (detected by 1, t=10502 jiffies, g=9244, c=9243, q=178)
diff --git a/pkg/report/testdata/linux/report/293 b/pkg/report/testdata/linux/report/293
index d08dcca52..facd8d3a6 100644
--- a/pkg/report/testdata/linux/report/293
+++ b/pkg/report/testdata/linux/report/293
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in perf_mmap
+TYPE: HANG
[ 323.391020] INFO: rcu_sched self-detected stall on CPU
[ 323.396363] 1-...: (64999 ticks this GP) idle=97a/140000000000001/0 softirq=7370/7370 fqs=16241
diff --git a/pkg/report/testdata/linux/report/294 b/pkg/report/testdata/linux/report/294
index bf34a6e0c..152f7447b 100644
--- a/pkg/report/testdata/linux/report/294
+++ b/pkg/report/testdata/linux/report/294
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in lo_compat_ioctl
+TYPE: HANG
[ 480.801028] INFO: rcu_sched self-detected stall on CPU
[ 480.806333] 0-...: (64962 ticks this GP) idle=ff6/140000000000001/0 softirq=6610/6610 fqs=16220
diff --git a/pkg/report/testdata/linux/report/295 b/pkg/report/testdata/linux/report/295
index 2c903954c..00eaa5a66 100644
--- a/pkg/report/testdata/linux/report/295
+++ b/pkg/report/testdata/linux/report/295
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in netlink_sendmsg
+TYPE: HANG
[ 355.572806] INFO: rcu_sched self-detected stall on CPU
[ 355.578254] 0: (104999 ticks this GP) idle=ab9/140000000000001/0 softirq=76582/76582 fqs=34894
diff --git a/pkg/report/testdata/linux/report/296 b/pkg/report/testdata/linux/report/296
index c5660be7a..43fe0f653 100644
--- a/pkg/report/testdata/linux/report/296
+++ b/pkg/report/testdata/linux/report/296
@@ -1,4 +1,5 @@
TITLE: BUG: soft lockup in mount
+TYPE: HANG
[ 848.443720] NMI watchdog: BUG: soft lockup - CPU#1 stuck for 123s! [syz-executor694:3996]
[ 848.452125] Modules linked in:
diff --git a/pkg/report/testdata/linux/report/297 b/pkg/report/testdata/linux/report/297
index 586be8c13..0d126f9a4 100644
--- a/pkg/report/testdata/linux/report/297
+++ b/pkg/report/testdata/linux/report/297
@@ -1,4 +1,5 @@
TITLE: BUG: soft lockup in blkdev_close
+TYPE: HANG
[ 601.962573] watchdog: BUG: soft lockup - CPU#1 stuck for 123s! [syz-executor1:24793]
[ 601.970515] Modules linked in:
diff --git a/pkg/report/testdata/linux/report/298 b/pkg/report/testdata/linux/report/298
index 1ecf5e7dc..923efbd14 100644
--- a/pkg/report/testdata/linux/report/298
+++ b/pkg/report/testdata/linux/report/298
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in netlink_sendmsg
+TYPE: HANG
[ 287.048281] INFO: rcu_sched self-detected stall on CPU
[ 287.053694] 0: (104999 ticks this GP) idle=769/140000000000001/0 softirq=28286/28286 fqs=34911
diff --git a/pkg/report/testdata/linux/report/299 b/pkg/report/testdata/linux/report/299
index 9da269095..0e13c1486 100644
--- a/pkg/report/testdata/linux/report/299
+++ b/pkg/report/testdata/linux/report/299
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in sched_ttwu_pending
+TYPE: HANG
[ 575.758025] INFO: rcu_sched detected stalls on CPUs/tasks:
[ 575.764179] (detected by 1, t=300086 jiffies, g=27161, c=27160, q=118)
diff --git a/pkg/report/testdata/linux/report/300 b/pkg/report/testdata/linux/report/300
index 8602edef5..bb0d0b02f 100644
--- a/pkg/report/testdata/linux/report/300
+++ b/pkg/report/testdata/linux/report/300
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in uhaul_release
+TYPE: HANG
[ 3481.239960] INFO: rcu_sched detected stalls on CPUs/tasks:
[ 3481.239969] (detected by 1, t=105002 jiffies, g=687946, c=687945, q=520)
diff --git a/pkg/report/testdata/linux/report/309 b/pkg/report/testdata/linux/report/309
index 5f8479019..a669b7f8b 100644
--- a/pkg/report/testdata/linux/report/309
+++ b/pkg/report/testdata/linux/report/309
@@ -1,4 +1,5 @@
TITLE: memory leak in sget
+TYPE: LEAK
BUG: memory leak
unreferenced object 0xffff88006b006340 (size 32):
diff --git a/pkg/report/testdata/linux/report/310 b/pkg/report/testdata/linux/report/310
index c84eac981..744534e57 100644
--- a/pkg/report/testdata/linux/report/310
+++ b/pkg/report/testdata/linux/report/310
@@ -1,4 +1,5 @@
TITLE: memory leak in __kernfs_new_node
+TYPE: LEAK
BUG: memory leak
unreferenced object 0xffff88005a065340 (size 576):
diff --git a/pkg/report/testdata/linux/report/311 b/pkg/report/testdata/linux/report/311
index 917f9773a..4ef4efe62 100644
--- a/pkg/report/testdata/linux/report/311
+++ b/pkg/report/testdata/linux/report/311
@@ -1,4 +1,5 @@
TITLE: memory leak in kobject_set_name_vargs
+TYPE: LEAK
BUG: memory leak
unreferenced object 0xffff88005f607a40 (size 32):
diff --git a/pkg/report/testdata/linux/report/312 b/pkg/report/testdata/linux/report/312
index 7723ab129..314c6549d 100644
--- a/pkg/report/testdata/linux/report/312
+++ b/pkg/report/testdata/linux/report/312
@@ -1,4 +1,5 @@
TITLE: memory leak in map_create
+TYPE: LEAK
BUG: memory leak
unreferenced object 0xffff88005f7ac800 (size 2048):
diff --git a/pkg/report/testdata/linux/report/317 b/pkg/report/testdata/linux/report/317
index 99031f31a..f38fc53d3 100644
--- a/pkg/report/testdata/linux/report/317
+++ b/pkg/report/testdata/linux/report/317
@@ -1,4 +1,5 @@
TITLE: unexpected kernel reboot
+TYPE: REBOOT
[ 500.720639] EFER = 0x0000000000000d01 PAT = 0x0407050600070106
SeaBIOS (version 1.8.2-20181014_101610-google)
diff --git a/pkg/report/testdata/linux/report/318 b/pkg/report/testdata/linux/report/318
index 26f198c05..fd9b9a0f0 100644
--- a/pkg/report/testdata/linux/report/318
+++ b/pkg/report/testdata/linux/report/318
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in kvm_vm_compat_ioctl
+TYPE: HANG
[ 393.750282] INFO: rcu_sched self-detected stall on CPU
[ 393.755773] 1: (104999 ticks this GP) idle=235/140000000000001/0 softirq=67058/67058 fqs=202
diff --git a/pkg/report/testdata/linux/report/349 b/pkg/report/testdata/linux/report/349
index c53e4a498..9a153f2f3 100644
--- a/pkg/report/testdata/linux/report/349
+++ b/pkg/report/testdata/linux/report/349
@@ -1,4 +1,5 @@
TITLE: INFO: task hung in jbd2_journal_commit_transaction
+TYPE: HANG
[ 1431.920513][ T1054] INFO: task jbd2/sda-8:3563 blocked for more than 140 seconds.
[ 1431.921721][ T1054] Not tainted 4.20.0-next-20190102+ #5
diff --git a/pkg/report/testdata/linux/report/350 b/pkg/report/testdata/linux/report/350
index 91f72a584..7c2eb3ce1 100644
--- a/pkg/report/testdata/linux/report/350
+++ b/pkg/report/testdata/linux/report/350
@@ -1,4 +1,5 @@
TITLE: BUG: soft lockup in perf_release
+TYPE: HANG
[ 1098.601132][ C2] watchdog: BUG: soft lockup - CPU#2 stuck for 136s! [syz-executor4:4888]
[ 1098.605452][ C2] Modules linked in:
diff --git a/pkg/report/testdata/linux/report/365 b/pkg/report/testdata/linux/report/365
index 8dbe2a671..b8c1c88d9 100644
--- a/pkg/report/testdata/linux/report/365
+++ b/pkg/report/testdata/linux/report/365
@@ -1,4 +1,5 @@
TITLE: INFO: task hung in corrupted
+TYPE: HANG
CORRUPTED: Y
[ 1528.243421][ T1040] INFO: task syz-executor.1:16255 blocked for more than 143 seconds.
diff --git a/pkg/report/testdata/linux/report/367 b/pkg/report/testdata/linux/report/367
index 3e569e7e7..0b3ecaeb4 100644
--- a/pkg/report/testdata/linux/report/367
+++ b/pkg/report/testdata/linux/report/367
@@ -1,4 +1,5 @@
TITLE: INFO: task hung in mon_bin_read
+TYPE: HANG
[ 286.641449] INFO: task syz-executor.0:6102 blocked for more than 140 seconds.
[ 286.649215] Not tainted 4.15.0 #3
diff --git a/pkg/report/testdata/linux/report/368 b/pkg/report/testdata/linux/report/368
index 396843801..b0ed475a7 100644
--- a/pkg/report/testdata/linux/report/368
+++ b/pkg/report/testdata/linux/report/368
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in kvm_vm_compat_ioctl
+TYPE: HANG
[ 804.522871] INFO: rcu_sched self-detected stall on CPU
[ 804.529252] 1-....: (10499 ticks this GP) idle=fa6/140000000000001/0 softirq=95936/95936 fqs=5159
diff --git a/pkg/report/testdata/linux/report/369 b/pkg/report/testdata/linux/report/369
index deb23a2f8..dfc506c2d 100644
--- a/pkg/report/testdata/linux/report/369
+++ b/pkg/report/testdata/linux/report/369
@@ -1,5 +1,5 @@
-# TODO: this rcu stall does not contain apic_timer_interrupt somehow and so falsely marked as corrupted.
TITLE: INFO: rcu detected stall in corrupted
+TYPE: HANG
CORRUPTED: Y
[ 161.009133][ C1] rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
diff --git a/pkg/report/testdata/linux/report/373 b/pkg/report/testdata/linux/report/373
index c355af9ee..72b7178c8 100644
--- a/pkg/report/testdata/linux/report/373
+++ b/pkg/report/testdata/linux/report/373
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in rtc_timer_do_work
+TYPE: HANG
[ 249.033000] INFO: rcu_sched self-detected stall on CPU
[ 249.038403] 1-....: (10499 ticks this GP) idle=35e/140000000000001/0 softirq=17797/17797 fqs=5227
diff --git a/pkg/report/testdata/linux/report/378 b/pkg/report/testdata/linux/report/378
index d2e418f0c..66dd079b3 100644
--- a/pkg/report/testdata/linux/report/378
+++ b/pkg/report/testdata/linux/report/378
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in inotify_init
+TYPE: HANG
[ 990.309025][ C0] rcu: INFO: rcu_preempt self-detected stall on CPU
[ 990.312270][ C1] net_ratelimit: 18 callbacks suppressed
diff --git a/pkg/report/testdata/linux/report/379 b/pkg/report/testdata/linux/report/379
index 09d834b75..45afb1a76 100644
--- a/pkg/report/testdata/linux/report/379
+++ b/pkg/report/testdata/linux/report/379
@@ -1,4 +1,5 @@
TITLE: INFO: task hung in exit_aio
+TYPE: HANG
[ 2435.283131] INFO: task syz-executor.0:18224 blocked for more than 143 seconds.
[ 2435.283923] Not tainted 5.1.0-rc3 #1
diff --git a/pkg/report/testdata/linux/report/385 b/pkg/report/testdata/linux/report/385
index 35a7f0198..bda303236 100644
--- a/pkg/report/testdata/linux/report/385
+++ b/pkg/report/testdata/linux/report/385
@@ -1,4 +1,5 @@
TITLE: INFO: task hung in mount_bdev
+TYPE: HANG
[ 767.964958][ T1042] INFO: task syz-executor013:7561 blocked for more than 143 seconds.
[ 767.973200][ T1042] Not tainted 5.1.0-rc6+ #90
diff --git a/pkg/report/testdata/linux/report/386 b/pkg/report/testdata/linux/report/386
index 4cb735da4..2def21624 100644
--- a/pkg/report/testdata/linux/report/386
+++ b/pkg/report/testdata/linux/report/386
@@ -1,4 +1,5 @@
TITLE: INFO: task hung in exit_aio
+TYPE: HANG
[ 284.633903] INFO: task syz-executor.11:6660 blocked for more than 143 seconds.
[ 284.635314] Not tainted 5.1.0-rc3-00035-g8ed86627f715 #7
diff --git a/pkg/report/testdata/linux/report/51 b/pkg/report/testdata/linux/report/51
index 4bd9f23c9..b74281e72 100644
--- a/pkg/report/testdata/linux/report/51
+++ b/pkg/report/testdata/linux/report/51
@@ -1,4 +1,5 @@
TITLE: memory leak in do_ipv6_setsockopt
+TYPE: LEAK
2018/01/09 14:28:48 BUG: memory leak
unreferenced object 0xffff880039a55260 (size 64):
diff --git a/pkg/report/testdata/linux/report/52 b/pkg/report/testdata/linux/report/52
index 11d353c1c..24a09f78d 100644
--- a/pkg/report/testdata/linux/report/52
+++ b/pkg/report/testdata/linux/report/52
@@ -1,4 +1,5 @@
TITLE: memory leak in inet6_create
+TYPE: LEAK
2018/01/09 14:28:48 BUG: memory leak
unreferenced object 0xffff8800342540c0 (size 1864):
diff --git a/pkg/report/testdata/linux/report/53 b/pkg/report/testdata/linux/report/53
index bad2a423b..26e60375c 100644
--- a/pkg/report/testdata/linux/report/53
+++ b/pkg/report/testdata/linux/report/53
@@ -1,4 +1,5 @@
TITLE: memory leak in ext4_mb_init
+TYPE: LEAK
2018/01/09 14:28:48 BUG: memory leak
unreferenced object 0xffff880133c63800 (size 1024):
diff --git a/pkg/report/testdata/linux/report/54 b/pkg/report/testdata/linux/report/54
index 1637470d9..759c289b9 100644
--- a/pkg/report/testdata/linux/report/54
+++ b/pkg/report/testdata/linux/report/54
@@ -1,4 +1,5 @@
TITLE: memory leak in eth_rx_fill
+TYPE: LEAK
2018/01/09 14:28:48 BUG: memory leak
unreferenced object 0xc625e000 (size 2048):
diff --git a/pkg/report/testdata/linux/report/55 b/pkg/report/testdata/linux/report/55
index 49330e3f0..6e8b4c701 100644
--- a/pkg/report/testdata/linux/report/55
+++ b/pkg/report/testdata/linux/report/55
@@ -1,4 +1,5 @@
TITLE: memory leak in start_kernel
+TYPE: LEAK
2018/01/09 14:28:48 BUG: memory leak
unreferenced object 0xdb8040c0 (size 20):
diff --git a/pkg/report/testdata/linux/report/57 b/pkg/report/testdata/linux/report/57
index ed9fc28b8..4459d0e32 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 corrupted
+TYPE: HANG
CORRUPTED: Y
[ 277.780013] INFO: rcu_sched self-detected stall on CPU
diff --git a/pkg/report/testdata/linux/report/58 b/pkg/report/testdata/linux/report/58
index a32d5630f..10990fe8a 100644
--- a/pkg/report/testdata/linux/report/58
+++ b/pkg/report/testdata/linux/report/58
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in corrupted
+TYPE: HANG
CORRUPTED: Y
[ 1722.511384] INFO: rcu_preempt detected stalls on CPUs/tasks: { 2} (detected by 0, t=65008 jiffies, g=48068, c=48067, q=7339)
diff --git a/pkg/report/testdata/linux/report/59 b/pkg/report/testdata/linux/report/59
index f1fa08de7..8a56f5c35 100644
--- a/pkg/report/testdata/linux/report/59
+++ b/pkg/report/testdata/linux/report/59
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in corrupted
+TYPE: HANG
CORRUPTED: Y
[ 317.168127] INFO: rcu_sched detected stalls on CPUs/tasks: { 0} (detected by 1, t=2179 jiffies, g=740, c=739, q=1)
diff --git a/pkg/report/testdata/linux/report/60 b/pkg/report/testdata/linux/report/60
index 540d13ea0..40e108714 100644
--- a/pkg/report/testdata/linux/report/60
+++ b/pkg/report/testdata/linux/report/60
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in corrupted
+TYPE: HANG
CORRUPTED: Y
[ 50.583499] something
diff --git a/pkg/report/testdata/linux/report/61 b/pkg/report/testdata/linux/report/61
index 7d5a5ae4f..9d051475b 100644
--- a/pkg/report/testdata/linux/report/61
+++ b/pkg/report/testdata/linux/report/61
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in corrupted
+TYPE: HANG
CORRUPTED: Y
[ 50.583499] INFO: rcu_sched self-detected stall on CPU
diff --git a/pkg/report/testdata/linux/report/62 b/pkg/report/testdata/linux/report/62
index 2f06e0b31..7b9bdc75a 100644
--- a/pkg/report/testdata/linux/report/62
+++ b/pkg/report/testdata/linux/report/62
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in corrupted
+TYPE: HANG
CORRUPTED: Y
[ 152.002376] INFO: rcu_bh detected stalls on CPUs/tasks:
diff --git a/pkg/report/testdata/linux/report/63 b/pkg/report/testdata/linux/report/63
index d040b80bb..ca03daea5 100644
--- a/pkg/report/testdata/linux/report/63
+++ b/pkg/report/testdata/linux/report/63
@@ -1,4 +1,5 @@
TITLE: INFO: rcu detected stall in corrupted
+TYPE: HANG
CORRUPTED: Y
[ 72.159680] INFO: rcu_sched detected expedited stalls on CPUs/tasks: {
diff --git a/pkg/report/testdata/linux/report/65 b/pkg/report/testdata/linux/report/65
index e8b0d8381..4e39b0278 100644
--- a/pkg/report/testdata/linux/report/65
+++ b/pkg/report/testdata/linux/report/65
@@ -1,4 +1,5 @@
TITLE: BUG: soft lockup in jump_label_update_timeout
+TYPE: HANG
[ 247.938942] watchdog: BUG: soft lockup - CPU#0 stuck for 134s! [kworker/0:2:1400]
[ 247.946595] Modules linked in:
diff --git a/pkg/report/testdata/linux/report/67 b/pkg/report/testdata/linux/report/67
index 0976cb34e..cc39a9761 100644
--- a/pkg/report/testdata/linux/report/67
+++ b/pkg/report/testdata/linux/report/67
@@ -1,4 +1,5 @@
TITLE: BUG: soft lockup in snd_pcm_oss_write
+TYPE: HANG
[ 562.725743] watchdog: BUG: soft lockup - CPU#0 stuck for 135s! [syzkaller670324:3527]
[ 562.733767] Modules linked in:
diff --git a/pkg/report/testdata/linux/report/69 b/pkg/report/testdata/linux/report/69
index 06aca0a00..1dab51f9d 100644
--- a/pkg/report/testdata/linux/report/69
+++ b/pkg/report/testdata/linux/report/69
@@ -1,4 +1,5 @@
TITLE: INFO: task hung in tty_ldisc_hangup
+TYPE: HANG
[ 843.240752] INFO: task getty:2986 blocked for more than 120 seconds.
[ 843.247365] Not tainted 3.18.0-13280-g93f6785-dirty #12
diff --git a/pkg/report/testdata/linux/report/7 b/pkg/report/testdata/linux/report/7
index a89e0316d..a7caf3edd 100644
--- a/pkg/report/testdata/linux/report/7
+++ b/pkg/report/testdata/linux/report/7
@@ -1,4 +1,5 @@
TITLE: BUG: soft lockup in corrupted
+TYPE: HANG
CORRUPTED: Y
mmap(&(0x7f00008dd000/0x1000)=nil, (0x1000), 0x3, 0x32, 0xffffffffffffffff, 0x0)
diff --git a/pkg/report/testdata/linux/report/70 b/pkg/report/testdata/linux/report/70
index 8819642d6..8211afa8a 100644
--- a/pkg/report/testdata/linux/report/70
+++ b/pkg/report/testdata/linux/report/70
@@ -1,4 +1,5 @@
TITLE: INFO: task hung in iterate_bdevs
+TYPE: HANG
[ 615.391254] INFO: task syz-executor5:10045 blocked for more than 120 seconds.
[ 615.398657] Not tainted 4.13.0-rc1+ #4
diff --git a/pkg/report/testdata/linux/report/71 b/pkg/report/testdata/linux/report/71
index c6f6d382a..c2832bb27 100644
--- a/pkg/report/testdata/linux/report/71
+++ b/pkg/report/testdata/linux/report/71
@@ -1,4 +1,5 @@
TITLE: INFO: task hung in blkdev_put
+TYPE: HANG
[ 244.447743] INFO: task syz-executor2:14507 blocked for more than 120 seconds.
[ 244.455167] Not tainted 4.9.40-ged32335 #11
diff --git a/pkg/report/testdata/linux/report/72 b/pkg/report/testdata/linux/report/72
index 35b039116..b7df9b1ac 100644
--- a/pkg/report/testdata/linux/report/72
+++ b/pkg/report/testdata/linux/report/72
@@ -1,4 +1,5 @@
TITLE: INFO: task hung in ieee80211_unregister_hw
+TYPE: HANG
[ 981.809015] INFO: task kworker/0:1:764 blocked for more than 120 seconds.
[ 981.815945] Not tainted 4.9.39-g72a0c9f #6
diff --git a/pkg/report/testdata/linux/report/73 b/pkg/report/testdata/linux/report/73
index 5ab17cdd3..cc4b25c78 100644
--- a/pkg/report/testdata/linux/report/73
+++ b/pkg/report/testdata/linux/report/73
@@ -1,4 +1,5 @@
TITLE: INFO: task hung in set_current_rng
+TYPE: HANG
[ 863.200911] INFO: task syz-executor0:5676 blocked for more than 120 seconds.
[ 863.203658] Not tainted 4.14.0-rc8-44455-ge2105594a876 #110
diff --git a/pkg/report/testdata/linux/report/74 b/pkg/report/testdata/linux/report/74
index 6e8c8341e..af62064a7 100644
--- a/pkg/report/testdata/linux/report/74
+++ b/pkg/report/testdata/linux/report/74
@@ -1,4 +1,5 @@
TITLE: INFO: task hung in copy_net_ns
+TYPE: HANG
[ 361.246294] INFO: task syz-executor0:6102 blocked for more than 120 seconds.
[ 361.253503] Not tainted 4.4.96+ #180