From: Andrey Ryabinin <aryabinin@virtuozzo.com>
To: Dmitry Vyukov <dvyukov@google.com>,
Tetsuo Handa <penguin-kernel@i-love.sakura.ne.jp>
Cc: syzbot <syzbot+ec1b7575afef85a0e5ca@syzkaller.appspotmail.com>,
Andrew Morton <akpm@linux-foundation.org>, Qian Cai <cai@lca.pw>,
David Miller <davem@davemloft.net>,
guro@fb.com, Johannes Weiner <hannes@cmpxchg.org>,
Josef Bacik <jbacik@fb.com>, Kirill Tkhai <ktkhai@virtuozzo.com>,
LKML <linux-kernel@vger.kernel.org>,
Linux-MM <linux-mm@kvack.org>,
linux-sctp@vger.kernel.org,
Mel Gorman <mgorman@techsingularity.net>,
Michal Hocko <mhocko@suse.com>, netdev <netdev@vger.kernel.org>,
Neil Horman <nhorman@tuxdriver.com>,
Shakeel Butt <shakeelb@google.com>,
syzkaller-bugs <syzkaller-bugs@googlegroups.com>,
Al Viro <viro@zeniv.linux.org.uk>,
Vladislav Yasevich <vyasevich@gmail.com>,
Matthew Wilcox <willy@infradead.org>,
Xin Long <lucien.xin@gmail.com>
Subject: Re: kernel panic: corrupted stack end in wb_workfn
Date: Wed, 20 Mar 2019 16:34:11 +0300 [thread overview]
Message-ID: <315c8ff3-fd03-f2ca-c546-ca7dc5c14669@virtuozzo.com> (raw)
In-Reply-To: <CACT4Y+Zh8eA50egLquE4LPffTCmF+30QR0pKTpuz_FpzsXVmZg@mail.gmail.com>
On 3/20/19 1:38 PM, Dmitry Vyukov wrote:
> On Wed, Mar 20, 2019 at 11:24 AM Tetsuo Handa
> <penguin-kernel@i-love.sakura.ne.jp> wrote:
>>
>> On 2019/03/20 18:59, Dmitry Vyukov wrote:
>>>> From bisection log:
>>>>
>>>> testing release v4.17
>>>> testing commit 29dcea88779c856c7dc92040a0c01233263101d4 with gcc (GCC) 8.1.0
>>>> run #0: crashed: kernel panic: corrupted stack end in wb_workfn
>>>> run #1: crashed: kernel panic: corrupted stack end in worker_thread
>>>> run #2: crashed: kernel panic: Out of memory and no killable processes...
>>>> run #3: crashed: kernel panic: corrupted stack end in wb_workfn
>>>> run #4: crashed: kernel panic: corrupted stack end in wb_workfn
>>>> run #5: crashed: kernel panic: corrupted stack end in wb_workfn
>>>> run #6: crashed: kernel panic: corrupted stack end in wb_workfn
>>>> run #7: crashed: kernel panic: corrupted stack end in wb_workfn
>>>> run #8: crashed: kernel panic: Out of memory and no killable processes...
>>>> run #9: crashed: kernel panic: corrupted stack end in wb_workfn
>>>> testing release v4.16
>>>> testing commit 0adb32858b0bddf4ada5f364a84ed60b196dbcda with gcc (GCC) 8.1.0
>>>> run #0: OK
>>>> run #1: OK
>>>> run #2: OK
>>>> run #3: OK
>>>> run #4: OK
>>>> run #5: crashed: kernel panic: Out of memory and no killable processes...
>>>> run #6: OK
>>>> run #7: crashed: kernel panic: Out of memory and no killable processes...
>>>> run #8: OK
>>>> run #9: OK
>>>> testing release v4.15
>>>> testing commit d8a5b80568a9cb66810e75b182018e9edb68e8ff with gcc (GCC) 8.1.0
>>>> all runs: OK
>>>> # git bisect start v4.16 v4.15
>>>>
>>>> Why bisect started between 4.16 4.15 instead of 4.17 4.16?
>>>
>>> Because 4.16 was still crashing and 4.15 was not crashing. 4.15..4.16
>>> looks like the right range, no?
>>
>> No, syzbot should bisect between 4.16 and 4.17 regarding this bug, for
>> "Stack corruption" can't manifest as "Out of memory and no killable processes".
>>
>> "kernel panic: Out of memory and no killable processes..." is completely
>> unrelated to "kernel panic: corrupted stack end in wb_workfn".
>
>
> Do you think this predicate is possible to code?
Something like bellow probably would work better than current behavior.
For starters, is_duplicates() might just compare 'crash' title with 'target_crash' title and its duplicates titles.
syzbot has some knowledge about duplicates with different crash titles when people use "syz dup" command.
Also it might be worth to experiment with using neural networks to identify duplicates.
target_crash = 'kernel panic: corrupted stack end in wb_workfn'
test commit:
bad = false;
skip = true;
foreach run:
run_started, crashed, crash := run_repro();
//kernel built, booted, reproducer launched successfully
if (run_started)
skip = false;
if (crashed && is_duplicates(crash, target_crash))
bad = true;
if (skip)
git bisect skip;
else if (bad)
git bisect bad;
else
git bisect good;
next prev parent reply other threads:[~2019-03-20 13:34 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-12-31 3:41 syzbot
2018-12-31 3:41 ` syzbot
2018-12-31 3:47 ` Qian Cai
2018-12-31 6:31 ` Dmitry Vyukov
2018-12-31 6:31 ` Dmitry Vyukov
2019-03-17 20:49 ` syzbot
2019-03-19 18:03 ` Xin Long
2019-03-20 9:56 ` Andrey Ryabinin
2019-03-20 9:59 ` Dmitry Vyukov
2019-03-20 10:23 ` Tetsuo Handa
2019-03-20 10:38 ` Dmitry Vyukov
2019-03-20 10:42 ` Dmitry Vyukov
2019-03-20 10:58 ` Tetsuo Handa
2019-03-20 13:59 ` Dmitry Vyukov
2019-03-20 13:34 ` Andrey Ryabinin [this message]
2019-03-20 13:57 ` Dmitry Vyukov
2019-03-21 9:45 ` Dmitry Vyukov
2019-03-21 9:51 ` Dmitry Vyukov
2019-03-21 11:41 ` Tetsuo Handa
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=315c8ff3-fd03-f2ca-c546-ca7dc5c14669@virtuozzo.com \
--to=aryabinin@virtuozzo.com \
--cc=akpm@linux-foundation.org \
--cc=cai@lca.pw \
--cc=davem@davemloft.net \
--cc=dvyukov@google.com \
--cc=guro@fb.com \
--cc=hannes@cmpxchg.org \
--cc=jbacik@fb.com \
--cc=ktkhai@virtuozzo.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=linux-sctp@vger.kernel.org \
--cc=lucien.xin@gmail.com \
--cc=mgorman@techsingularity.net \
--cc=mhocko@suse.com \
--cc=netdev@vger.kernel.org \
--cc=nhorman@tuxdriver.com \
--cc=penguin-kernel@i-love.sakura.ne.jp \
--cc=shakeelb@google.com \
--cc=syzbot+ec1b7575afef85a0e5ca@syzkaller.appspotmail.com \
--cc=syzkaller-bugs@googlegroups.com \
--cc=viro@zeniv.linux.org.uk \
--cc=vyasevich@gmail.com \
--cc=willy@infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox