tech-kern archive

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

Re: Ubiquitous ucas(9)



(Apologies for the small-screen reply... picking up someone at the airport, and this is the device I have handy whilst I wait...)

Yes, sparc and vax have “test-and-set” atomic primitives.  Those are perfectly fine for implementing an interlock in a mutex, but the algorithm I’m implementing at a higher level shares some state between user and kernel, and an interlock-based mechanism is not really appropriate for obvious reasons.

Only MP sparcv8 and vax will pay the penalty in with my proposed solution.  It seems a small price to pay for a simpler and better-performing algorithm on literally every other platform.

-- thorpej
Sent from my iPhone.

On Mar 29, 2019, at 7:04 PM, Mouse <mouse%rodents-montreal.org@localhost> wrote:

>> I'm trying to wrap up my ufetch / ustore changes (http://mail-index.netbsd.o$
>> [...]
>> Then there are platforms where [ucas is] just missing (sparc, vax).
>> These platfo$
> 
> Why insist that LL/SC and CAS are the only acceptable primitives, and
> that platforms that don't have them in hardware have to simulate them?
> The VAX, at least, has primitives eminently suitable for MP use; they
> just don't fit a Procrustean LL/SC-or-CAS mold very well.  (SPARC may
> too; I just don't know it nearly as well as I know the VAX.)
> 
> Or am I just revealing my ignorance of..something..and if I just knew
> something additional the answer to that would be obvious?
> 
> /~\ The ASCII                  Mouse
> \ / Ribbon Campaign
> X  Against HTML        mouse%rodents-montreal.org@localhost
> / \ Email!         7D C8 61 52 5D E7 2D 39  4E F1 31 3E E8 B3 27 4B



Home | Main Index | Thread Index | Old Index