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