Messages in this thread | | | From | Sergey Senozhatsky <> | Date | Thu, 23 Apr 2020 11:58:02 +0900 | 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
| |