[Bug 233863] r345425 on PowerMac G5 may require kern.smp.disabled=1 and must set usefdt=1 which causes net interface reorder

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Mon Apr 22 06:06:40 UTC 2019


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=233863

--- Comment #25 from Mark Millard <marklmi26-fbsd at yahoo.com> ---
(In reply to Mark Millard from comment #24)

As for the usefdt mode G3 exploration:

The debug kernel did not report anything special.
Disabling swap made no general change to the
behaviors.

An interesting comparison is:

Under the debug kernel I got a machine check, reported
to be at the end of:

<moea_pvo_enter+0xbc> bl      00503bf0 <__mtx_lock_flags>
<moea_pvo_enter+0xc0> rlwinm  r26,r21,2,0,29
<moea_pvo_enter+0xc4> lwz     r9,-32748(r30)
<moea_pvo_enter+0xc8> lwz     r9,0(r9)
<moea_pvo_enter+0xcc> lwzx    r29,r26,r9
<moea_pvo_enter+0xd0> cmpwi   cr7,r29,0
<moea_pvo_enter+0xd4> beq-    cr7,008e9c8c <moea_pvo_enter+0x19c>
<moea_pvo_enter+0xd8> lwz     r0,52(r29)
<moea_pvo_enter+0xdc> cmpw    cr7,r0,r28

(But machine-checks are imprecise.)

Under a non-debug kernel I got a Data Storage Interrupt,
reported to be at the end of:

<moea_pvo_enter+0x110> bl      0054da44 <__mtx_lock_sleep>
<moea_pvo_enter+0x114> rlwinm  r26,r21,2,0,29
<moea_pvo_enter+0x118> lwz     r9,-32744(r30)
<moea_pvo_enter+0x11c> lwz     r9,0(r9)
<moea_pvo_enter+0x120> lwzx    r29,r26,r9
<moea_pvo_enter+0x124> cmpwi   cr7,r29,0
<moea_pvo_enter+0x128> beq-    cr7,0098ef74 <moea_pvo_enter+0x244>
<moea_pvo_enter+0x12c> lwz     r0,52(r29)

Both of these are tied to:

        mtx_lock(&moea_table_mutex);
        LIST_FOREACH(pvo, &moea_pvo_table[ptegidx], pvo_olink) {
                if (pvo->pvo_pmap == pm && PVO_VADDR(pvo) == va) {

with the "lwz r0,52(r29)" appearing to be the access for pvo->pvo_pmap
from what I can tell. In turn it suggests that, on the G3, values for
pvo result that are inappropriate. (Not that I have a clue why.)

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-ppc mailing list