Port-m68k archive

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

Re: SMP support for 680[34]0 ?



romain@ wrote:

> Assuming hardware could be made to work (working atomic TAS/CAS/CAS2,
> coherency maintained, probably by forcing everything to write-through
> at first to simplify the arbiter), how complex?

Well, maybe I should say it "boring and non-motivated work"
rather than "complex".

> I would think a lot of the support is 'common', and a port would only
> need some machine-specific primitives for synchronization, etc., but I
> haven't really looked so I could be way off base...
> Is there some document/reference explaining what's needed to add SMP
> to a port? Just so I know how crazy this idea really is :-)

Of course the MI (machine independent) part of NetBSD has enough SMP
support, but I'm afraid many sources in the m68k MD (machine dependent)
part like src/sys/arch/m68k/m68k/pmap_motorola.c and
src/sys/arch/[MACHINE]/[MACHINE]/pmap_bootstrap.c etc. assumed
there was no SMP support.

If qemu supports "real" SMP support it might be an interesting work
to implement it, but I wonder if qemu (and other emulators) will
implement critical race conditions and data/instruction caches
where most complex part of SMP support.

Thanks,
---
Izumi Tsutsui


Home | Main Index | Thread Index | Old Index