Port-sparc archive

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

sparc SMP seems fixed (was: re: SparcStation 20 system freezes)



... reviving old thread.

anyone who has has problems with sparc SMP on >2 cpu systems
should try out -current, or the latest netbsd-8 and netbsd-7*
branches.  thanks to macallan (who sent me some dual module
hypersparc cpus so i could have more than 2 cpus), and
finally seeing a stack trace i understood, i've fixed the
hang seen when running with more than 2 cpus.

   http://mail-index.netbsd.org/source-changes/2019/01/13/msg102344.html

in the end, the problem was fairly simple.  there are two
basic operations related to handling of user thread context:
pmap_activate() and pmap_deactivate().  since they run while
performing a context switch, they must not block themselves.
however, the pmap was using the global kernel lock for
protection and this can sleep, which leads to the hang.

i've updated the pmap(9) manual to be explicit about this
requirement.

please let me know if you test and the result -- success
or failure.  thanks!


.mrg.


Home | Main Index | Thread Index | Old Index