Port-sparc64 archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: SMP support for sparc64



-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hello,

On Mar 13, 2008, at 13:03, Takeshi Nakayama wrote:

Takeshi Nakayama <tn%catvmics.ne.jp@localhost> wrote

Please test and review the attached patch.

I just updated the patch, which fixes "RED State Exception" at
shutdown and probably hang on SBus based machines.

Pre-compiled kernel is also updated.

  ftp://ftp.netbsd.org/pub/NetBSD/misc/nakayama/netbsd-GENERIC.MP.gz

I have changed assignment of timers in this update.  Previous patch
uses %tick interrupt for system clock.  This patch uses
counter-timer #0 as same as single processor kernel, but %tick is
used for per-CPU statclock instead of counter-timer #1.

I tried your patch on an u60 - it went multiuser just fine but eventually ran into this panic:
data access exception
sparc_interrupt + 0x224
according to gdb that's in sparc_intr_retry
Dump of assembler code for function sparc_intr_retry:
0x00000000010092a4 <sparc_intr_retry+0>: wr %l3, 0, % clear_softint 0x00000000010092a8 <sparc_intr_retry+4>: sethi %hi (0xe0018000), %l4
0x00000000010092ac <sparc_intr_retry+8>:        sll  %l6, 3, %l2
0x00000000010092b0 <sparc_intr_retry+12>:       or  %l4, 0x68, %l4
0x00000000010092b4 <sparc_intr_retry+16>:       add  %l2, %l4, %l4
0x00000000010092b8 <sparc_intr_retry+20>:       membar  #StoreLoad
0x00000000010092bc <sparc_intr_retry+24>:       ldx  [ %l4 ], %l2
0x00000000010092c0 <sparc_intr_retry+28>:       cmp  %l2, -1
0x00000000010092c4 <sparc_intr_retry+32>: be,pn %xcc, 0x1009330 <intrcmplt>
0x00000000010092c8 <sparc_intr_retry+36>:       mov  -1, %l7
0x00000000010092cc <sparc_intr_retry+40>:       membar  #LoadStore
0x00000000010092d0 <sparc_intr_retry+44>: casxa [ %l4 ] #ASI_N, %l2, %l7
0x00000000010092d4 <sparc_intr_retry+48>:       cmp  %l7, %l2
0x00000000010092d8 <sparc_intr_retry+52>: bne,pn %icc, 0x10092b8 <sparc_intr_retry+20>
0x00000000010092dc <sparc_intr_retry+56>:       nop
0x00000000010092e0 <sparc_intr_retry+60>:       add  %sp, 0x8af, %o2
0x00000000010092e4 <sparc_intr_retry+64>:       ldx  [ %l2 + 0x30 ], %l7
0x00000000010092e8 <sparc_intr_retry+68>:       membar  #LoadStore
0x00000000010092ec <sparc_intr_retry+72>:       clrx  [ %l2 + 0x30 ]
0x00000000010092f0 <sparc_intr_retry+76>:       membar  #Sync

the panic came from 0x00000000010092e4 <sparc_intr_retry+64>

have fun
Michael

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (Darwin)

iQEVAwUBR9nTispnzkX8Yg2nAQJtHAf/dJNi/iNnZQR7fSL0/jILy20hO7WCoHVs
l+RwM2ZWH+nkHfIjmTc1rz96YDrxtPTZSohzxjTRndHT5Jp+pVK8xwkIz38YkhWF
/JQti/EaKrhnMVi8l4IbnYuEeRRNrX1XN5iUr+8Bi5aNOrg2BsCuqWMDKyHwZ9i4
WOJsvUTysOGWqSg1OaeZBL0vw+jtgaCiMPkpiEZv/8bq0BNz92i7CW4b2A0MSXoH
1f6Q7nhkpuVy/Mgmt4eTkAOLIQkTV9ipJuGVkf3Td5XBO+s3ac5P83Keuei35J0j
Ia/df8Mgs80DHtli9XJz/aC59/7wwVoAAb4r83oJ7/UnDcSCDZwvAA==
=woE4
-----END PGP SIGNATURE-----


Home | Main Index | Thread Index | Old Index