tech-kern archive

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

Re: 2*(void *) atomic swap?



On Sun, Aug 09, 2015 at 02:46:44PM -0400, Thor Lancelot Simon wrote:
> On Sun, Aug 09, 2015 at 02:25:08PM +0200, Joerg Sonnenberger wrote:
> > On Thu, Jul 30, 2015 at 06:23:33PM +0000, Taylor R Campbell wrote:
> > >    I don't think you can have a portable function like that.
> > > 
> > > Not that hard:
> > > 
> > > - On i386, use cmpxchg8b.
> > 
> > Just for the archive, this effectively means Pentium+. There are
> > actually 486-class SMP systems.
> 
> Heh.  There are 386-class SMP systems (including some massively parallel
> ones, some of which even ran open-source operating systems) too.
> 
> We don't run on any of them.  I am pretty sure, though there may be some
> vestigial code which in theory might have once made it possible, that we
> never ran on and do not run on any 486 SMP systems either.

Well, 386-class SMP is quite different. I think the only real difference
between 486 and Pentium when it comes to SMP is related to some of the
LAPIC details. But that is beyond this scope. There are some other
concerns about requiring it as Soekris and co don't have it, IIRC.

Joerg


Home | Main Index | Thread Index | Old Index