Panic with latest pmap lock changes.
Andreas Tobler
andreast-list at fgznet.ch
Tue Jul 10 20:23:38 UTC 2012
On 10.07.12 22:00, Alan Cox wrote:
> On Sun, Jul 8, 2012 at 3:55 PM, Andreas Tobler <andreast-list at fgznet.ch
> <mailto:andreast-list at fgznet.ch>> wrote:
>
> On 07.07.12 19:39, Alan Cox wrote:
>
> On 07/07/2012 09:20, Justin Hibbits wrote:
>
> Looks like I spoke too soon about the pmap lock changes
> working on my
> G4. After about 24 hours of uptime, it panicked with the
> following:
>
> _rw_wlock_hard: recursing but non-recursive rw pmap pv global
> @ /home/chmeee/freebsd/src/sys/__powerpc/aim/mmu_oea.c:2301
>
> I think the attached patch should fix it (Untested, except for
> compiling).
>
>
> Ugh. Sorry.
>
> The attached patch eliminates the lock recursion. While I was doing
> that, I noticed that the pmap_ts_referenced() implementations on
> powerpc
> have the wrong return type. Oddly, the comments in mmu_if.h
> have the
> return type correct, but the code two or three lines later has
> it wrong.
>
>
> Fyi, I'm building world with the patch mentioned in this thread and
> the kernel updated to 238258. (G5-SMP 32-bit)
>
> So far it looks promising.
>
> Before 238258 I got reliable machine locks/freeze w/o any idea what
> was happening.
>
> If I reverted mmu_oea.c back to 238158, one before the commit from
> you Alan, I was able to get a successful full world/kernel build cycle.
> Yes, I confirmed that it booted, but I was not able to run a full
> world/kernel cycle since I lost my GEOM_APM config ;).
>
> Anyway, as said, it looks promising and it will take some hours to
> complete.
>
>
> Should I commit the patch?
Hmmm, I had three successful world/kernel builds with this patch. All
with a GENERIC kernel. But I also had one freeze, no info/panic nothing,
with a kernel where I disabled the WITNESS/INVARIANTS stuff.
I think the patch is an improvement. I need to figure why I do not get
any info when the machine freezes/locks whatever. But this can be done
with the committed patch. Maybe we get bigger testing audience when it
is committed.
Thanks,
Andreas
More information about the freebsd-ppc
mailing list