Hi folks, As a result of my few weeks work, SMP kernel has become to work at least on my Ultra60 w/ 2 x 300MHz USII. Please test and review the attached patch. Pre-compiled -current GENERIC.MP kernel is also available at: ftp://ftp.netbsd.org/pub/NetBSD/misc/nakayama/netbsd-GENERIC.MP.gz Summary of changes: - add IPI event counters per-CPU. - make IPI takes two arguments. - implement IPI functions which were missing or broken. - disable "counter-timer" interrupts and use it as timecounter on SMP kernel, then use "tick" interrupts instead. - improve FPU state save/clear like x86, idea from OpenBSD. - complete per-CPU TSBs and MMU contexts changes. Known issue: - sometime lose tick interrupts. -- Takeshi Nakayama
Attachment:
sparc64-smp-20080312.diff.gz
Description: Binary data