Re: [bugreport 5.9-rc8] general protection fault in __bfq_deactivate_entity

From: Dmitry Vyukov
Date: Sun Mar 07 2021 - 05:18:10 EST


On Sun, Mar 7, 2021 at 11:09 AM Hillf Danton <hdanton@xxxxxxxx> wrote:
>
> On Sun, 7 Mar 2021 08:46:19 +0100 Dmitry Vyukov wrote:
> > On Sun, Mar 7, 2021 at 3:15 AM Hillf Danton <hdanton@xxxxxxxx> wrote:
> > >
> > > Dmitry can you shed some light on the tricks to config kasan to print
> > > Call Trace as the reports with the leading [syzbot] on the subject line do?
> >
> > +kasan-dev
> >
> > Hi Hillf,
> >
> > KASAN prints stack traces always unconditionally. There is nothing you
> > need to do at all.
>
> Got it, thanks.
>
> > Do you have any reports w/o stack traces?
>
> No, but I saw different formats in Call Trace prints.
>
> Below from [1] is the instance without file name and line number printed,
> while both info help spot the cause of the reported issue.


KASAN always prints stack traces w/o file:line info, like any other
kernel bug detection facility. Kernel itself never symbolizes reports.
In case of syzkaller, syzkaller will symbolize reports and add
file:line info. The main config it requires is CONFIG_DEBUG_INFO.

You may see syzkaller kernel configuration guide here:
https://github.com/google/syzkaller/blob/master/docs/linux/kernel_configs.md

Or fragments that are actually used to generate syzbot configs in this
dir (the guide above may be out-of-date):
https://github.com/google/syzkaller/blob/master/dashboard/config/linux/bits/base.yml
https://github.com/google/syzkaller/blob/master/dashboard/config/linux/bits/debug.yml
https://github.com/google/syzkaller/blob/master/dashboard/config/linux/bits/kasan.yml

Or a complete syzbot config here:
https://github.com/google/syzkaller/blob/master/dashboard/config/linux/upstream-apparmor-kasan.config


> >>>>>>>>>>>>>>>>>>>>>>>>>
>
> I was running syzkaller and I found the following issue :
>
> Head Commit : b1313fe517ca3703119dcc99ef3bbf75ab42bcfb ( v5.10.4 )
> Git Tree : stable
> Console Output :
> [ 242.769080] INFO: task repro:2639 blocked for more than 120 seconds.
> [ 242.769096] Not tainted 5.10.4 #8
> [ 242.769103] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs"
> disables this message.
> [ 242.769112] task:repro state:D stack: 0 pid: 2639
> ppid: 2638 flags:0x00000004
> [ 242.769126] Call Trace:
> [ 242.769148] __schedule+0x28d/0x7e0
> [ 242.769162] ? __percpu_counter_sum+0x75/0x90
> [ 242.769175] schedule+0x4f/0xc0
> [ 242.769187] __io_uring_task_cancel+0xad/0xf0
> [ 242.769198] ? wait_woken+0x80/0x80
> [ 242.769210] bprm_execve+0x67/0x8a0
> [ 242.769223] do_execveat_common+0x1d2/0x220
> [ 242.769235] __x64_sys_execveat+0x5d/0x70
> [ 242.769249] do_syscall_64+0x38/0x90
> [ 242.769260] entry_SYSCALL_64_after_hwframe+0x44/0xa9
>
> [1] https://lore.kernel.org/lkml/CAGyP=7cFM6BJE7X2PN9YUptQgt5uQYwM4aVmOiVayQPJg1pqaA@xxxxxxxxxxxxxx/