[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20200423025802.GD246741@jagdpanzerIV.localdomain>
Date: Thu, 23 Apr 2020 11:58:02 +0900
From: Sergey Senozhatsky <sergey.senozhatsky@...il.com>
To: Tetsuo Handa <penguin-kernel@...ove.sakura.ne.jp>
Cc: Sergey Senozhatsky <sergey.senozhatsky@...il.com>,
syzbot <syzbot+1c36440b364ea3774701@...kaller.appspotmail.com>,
linux-kernel@...r.kernel.org, syzkaller-bugs@...glegroups.com,
Network Development <netdev@...r.kernel.org>,
James Chapman <jchapman@...alix.com>,
Petr Mladek <pmladek@...e.com>
Subject: Re: WARNING: locking bug in tomoyo_supervisor
On (20/04/23 10:57), Tetsuo Handa wrote:
> On 2020/04/23 10:50, Sergey Senozhatsky wrote:
> > On (20/04/17 13:37), Tetsuo Handa wrote:
> >> On 2020/04/17 7:05, syzbot wrote:
> >>> Hello,
> >>>
> >>> syzbot found the following crash on:
> >>>
> >>> HEAD commit: 4f8a3cc1 Merge tag 'x86-urgent-2020-04-12' of git://git.ke..
> >>> git tree: upstream
> >>> console output: https://syzkaller.appspot.com/x/log.txt?x=1599027de00000
> >>> kernel config: https://syzkaller.appspot.com/x/.config?x=3bfbde87e8e65624
> >>> dashboard link: https://syzkaller.appspot.com/bug?extid=1c36440b364ea3774701
> >>> compiler: clang version 10.0.0 (https://github.com/llvm/llvm-project/ c2443155a0fb245c8f17f2c1c72b6ea391e86e81)
> >>> syz repro: https://syzkaller.appspot.com/x/repro.syz?x=150733cde00000
> >>
> >> This seems to be a misattributed report explained at https://lkml.kernel.org/r/20190924140241.be77u2jne3melzte@pathway.suse.cz .
> >> Petr and Sergey, how is the progress of making printk() asynchronous? When can we expect that work to be merged?
> >
> > I'd say that lockless logbuf probably will land sometime around 5.8+.
> > Async printk() - unknown.
>
> I see. Thank you. I've just made a patch for
>
> A solution would be to store all these metadata (timestamp, caller
> info) already into the per-CPU buffers. I think that it would be
> doable.
>
> part (shown below). Should I propose it? Or, should I just wait for lockless logbuf ?
I think this will be doable with a mix of the lockless buffer and per-CPU
printk context variable. We can store all printk data into the lockless
buffer, but need to avoid calling up()/down()/console_drivers() if per-CPU
printk context is non zero (the existinf printk_safe/printk_nmi enter/exit
functions will help). So I think waiting for lockless printk buffer would
be a better option, effort-wise.
-ss
Powered by blists - more mailing lists