On Tue, 3 Jun 2014, Grant Likely wrote:
> On Wed, Jun 12, 2013 at 8:49 AM, Thomas Gleixner <[email protected]> wrote:
> > On Tue, 11 Jun 2013, 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 <[email protected]>
> >> 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?
> >
> > https://patchwork.kernel.org/patch/2470731/
> >
> >> I'm also curious why devtree_lock was made raw to begin with...
> >> Iterating over a device tree doesn't seem like something you'd want to
> >> trust to be low-latency.
> >
> > The reason is that it's taken in low level cpu bringup code and I did
> > not find a different solution. :(
>
> Hey, Thomas,
>
> Do you remember where the offending code is? I'm looking at completely
> refactoring FDT locking so I'd like to take a crack and solving the
> cpu bringup problem.
Hmm, can't remember. All I found is where it got introduced:
https://lkml.org/lkml/2007/11/9/114
without comments of course :)
Ask someone with a pseries to grab RT and make the lock non
raw. Enable debugging (mightsleep, lockdep ...)
Boot with maxcpus=1 and then online cores from user space. Splat
should come right away. I remember that I saw some of them in a
pastebin.
Thanks,
tglx
--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html