From 3d741171f29921671c3c8da59f00911b4ee3bb23 Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Fri, 13 Jul 2018 10:31:26 +0200 Subject: pkg/report: add "lock held when returning to user space" format for older kernels --- pkg/report/linux.go | 7 ++++++- pkg/report/testdata/linux/report/258 | 10 ++++++++++ 2 files changed, 16 insertions(+), 1 deletion(-) create mode 100644 pkg/report/testdata/linux/report/258 (limited to 'pkg') diff --git a/pkg/report/linux.go b/pkg/report/linux.go index c8e8dc523..30f2770b1 100644 --- a/pkg/report/linux.go +++ b/pkg/report/linux.go @@ -693,6 +693,12 @@ var linuxOopses = []*oops{ report: compile("BUG: .*still has locks held!(?:.*\\n)+?.*{{PC}} +{{FUNC}}"), fmt: "BUG: still has locks held in %[1]v", }, + { + title: compile("BUG: lock held when returning to user space"), + report: compile("BUG: lock held when returning to user space(?:.*\\n)+?.*leaving the kernel with locks still held(?:.*\\n)+?.*at: (?:{{PC}} +)?{{FUNC}}"), + fmt: "BUG: lock held when returning to user space in %[1]v", + noStackTrace: true, + }, { title: compile("BUG: bad unlock balance detected!"), report: compile("BUG: bad unlock balance detected!(?:.*\\n){0,15}?.*is trying to release lock(?:.*\\n){0,15}?.*{{PC}} +{{FUNC}}"), @@ -819,7 +825,6 @@ var linuxOopses = []*oops{ fmt: "WARNING: locking bug in %[1]v", stack: warningStackFmt(), }, - { title: compile("WARNING: lock held when returning to user space"), report: compile("WARNING: lock held when returning to user space(?:.*\\n)+?.*leaving the kernel with locks still held(?:.*\\n)+?.*at: (?:{{PC}} +)?{{FUNC}}"), diff --git a/pkg/report/testdata/linux/report/258 b/pkg/report/testdata/linux/report/258 new file mode 100644 index 000000000..acded8699 --- /dev/null +++ b/pkg/report/testdata/linux/report/258 @@ -0,0 +1,10 @@ +TITLE: BUG: lock held when returning to user space in fuse_lock_inode + +[ 36.715112] ================================================ +[ 36.720935] [ BUG: lock held when returning to user space! ] +[ 36.726730] 4.9.112-g9e79039 #7 Not tainted +[ 36.731032] ------------------------------------------------ +[ 36.736813] syz-executor724/3814 is leaving the kernel with locks still held! +[ 36.744085] 1 lock held by syz-executor724/3814: +[ 36.748826] #0: (&fi->mutex){+.+.+.}, at: [] fuse_lock_inode+0xa2/0xd0 +[ 36.748826] #1: (&fi->mutex){+.+.+.}, at: [] somethingelse+0xa2/0xd0 -- cgit mrf-deployment