lockdep dump on devtree_lock (involving esdhc)

Scott Wood scottwood at freescale.com
Thu Jun 13 02:56:34 EST 2013


On 06/12/2013 10:43:31 AM, Stephen Warren wrote:
> On 06/11/2013 05:33 PM, Scott Wood wrote:
> > I get the following lockdump output on p2020rdb using
> > v3.10-rc5-43-g34376a5.  While it's not particularly polite for the
> > esdhc driver to be calling OF functions while holding another lock  
> which
> > can be acquired from interrupt context, why is devtree_lock usually
> > acquired in an irqsafe manner but sometimes not?
> >
> > Both types of usage were added by the same commit:
> >
> > commit d6d3c4e656513dcea61ce900f0ecb9ca820ee7cd
> > Author: Thomas Gleixner <tglx at linutronix.de>
> > Date:   Wed Feb 6 15:30:56 2013 -0500
> >
> >     OF: convert devtree lock from rw_lock to raw spinlock
> >
> > Stephen, you asked about this here:
> > http://lkml.indiana.edu/hypermail/linux/kernel/1302.1/01383.html
> >
> > Did you ever get an answer?
> 
> I believe that was fixed by c31a0c0 "of: fix recursive locking in
> of_get_next_available_child()".

That may have fixed the hang that prompted that thread, but it didn't  
answer the question you raised about mixing irqsafe and non-irqsafe  
devtree_lock uses.

-Scott


More information about the devicetree-discuss mailing list