Strange panic on ppc64

Justin Hibbits jhibbits at freebsd.org
Thu Jun 13 03:30:58 UTC 2013


On Mon, Jun 10, 2013 at 9:20 PM, Justin Hibbits <jhibbits at freebsd.org>wrote:

> On Mon, Jun 10, 2013 at 6:31 AM, Nathan Whitehorn <nwhitehorn at freebsd.org>wrote:
>
>> On 06/10/13 08:20, Nathan Whitehorn wrote:
>> > This is now getting interesting. Reading the tea leaves, what has
>> > happened is that the kernel has called into Open Firmware. Open Firmware
>> > has then crashed early on, before setting up its own trap handlers,
>> > which has then flung you back into FreeBSD's handlers with a totally
>> > bogus environment, causing a second panic, which then causes a *third*
>> > panic when trying to acquire a lock. It would be interesting to know
>> > what the OF environment looked like and what commands it was trying to
>> > execute (in r3), but that may be tricky to get...
>> > -Nathan
>> > _______________________________________________
>>
>> One other point: you can trace this pretty easily by just putting
>> something like:
>>
>> if (pmap_bootstrapped) printf("Open Firmware call %p\n", args);
>>
>> in the top of openfirmware(). If I understood the debugger output
>> correctly, something should be making a firmware call immediately before
>> the crash.
>>
>> As a random guess about what is happening, it is possible OF is trying
>> to allocate memory for itself. We just ignore the possibility that it
>> might want to do that at present, but that is not necessarily a good
>> assumption.
>> -Nathan
>>
>
> I added that, both on entry and exit.  I also have it printing out the
> name of the ofw call, since the first item is always a pointer to the
> name.  I'll be able to report more tomorrow.
>
> - Justin
>

Since putting those printf()s in, my machine's been up for close to 48
hours without a hitch, and I've done a buildworld, plus a whole package
repo rebuild for my G4 (900 packages), 4 concurrent jobs (load average
regularly over 6).  I did see a ton of OF getprop calls for the first 12
hours of being up, but none since.

I'll try some multiple concurrent buildworlds after poudriere finishes.
This is very odd.

- Justin


More information about the freebsd-ppc mailing list