On (10/10/16 13:17), Petr Mladek wrote: [..] > > it may look that lockdep *probably* can report the issues via 'safe' printk, > > but that's a notably huge behavior breakage -- if lockdep report comes from > > an about-to-deadlock irq handler, then we won't see anything from that CPU > > unless there is a panic/nmi panic. > > > > so it probably has to be semi-automatic/semi-manual: > > - add might_printk() that would acquire/release console sem; or > > logbuf_lock (which is probably even better) > > - find all functions that do printk/WARN in kernel/time and kernel/sched > > - add might_printk() to those functions (just like might_sleep()) > > - run the kernel > > - ... > > - profit > > I like the idea with might_printk(). I hope that it will be acceptable > for the scheduler/timekeeping people. > > JFYI, I could work on the printk-context handling in lockdep. > I am just working on a lockdep support in NMI and am getting > kind of familiar with that code.
sorry, what do you mean by 'printk-context handling in lockdep'? wouldn't `lockdep + might_printk() + printk_safe' be enough? am I missing something? -ss