On Sun, 26 May 2019, Pavel Machek wrote:
> On Sat 2019-05-25 10:32:31, Hugh Dickins wrote:
> > 
> > Thanks, Pavel: yes, that works fine for me on the T420s, no debug
> > complaints, good and silent; and the wifi LED is blinking as before.
> 
> I'd like to prevent recurrence of similar problem, and I wonder if you
> can give me a hint.
> 
> I can annotate code that can sleep with might_sleep().
> 
> How can I annotate code that can not sleep? I might do 
> 
> spin_lock(&dummy);
> this_should_not_sleep();
> spin_unlock(&dummy);
> 
> But I don't really need extra serialization. I just want annotations for
> lockdep. Any ideas?

I haven't tried to do that directly, so I'm likely to give bad advice:
in particular, I forget the limitations of checking in_atomic().

But very useful (and much cheaper than lockdep) debug options in
this area are CONFIG_DEBUG_PREEMPT and CONFIG_DEBUG_ATOMIC_SLEEP.

Hugh

Reply via email to