Date: Fri, 09 Feb 2001 11:00:04 +1100 From: Peter Jeremy <peter.jeremy@alcatel.com.au> To: Bernd Walter <ticso@cicely5.cicely.de> Cc: freebsd-current@FreeBSD.ORG Subject: Re: atomic_ question Message-ID: <20010209110004.D90937@gsmx07.alcatel.com.au> In-Reply-To: <20010208222131.D81067@cicely5.cicely.de>; from ticso@cicely5.cicely.de on Thu, Feb 08, 2001 at 10:21:32PM %2B0100 References: <20010208182106.B80741@cicely5.cicely.de> <20010209075749.Z90937@gsmx07.alcatel.com.au> <20010208222131.D81067@cicely5.cicely.de>
next in thread | previous in thread | raw e-mail | index | archive | help
On 2001-Feb-08 22:21:32 +0100, Bernd Walter <ticso@cicely5.cicely.de> wrote: >On sparcv8 you don't have an operation doing conditionaly stores and >you don't have RMW operations. >The only way to do is to have a global lock variable on which you spin >until the current client finishes. The SPARC architecture supports SMP so there must be some synchronisation primitive that works between processors (disabling interrupts only works on the current processor). Normally the same primitive can be used to synchronise accesses within the same processor. I know the older SPARC's had a test-and-set instruction which was locked RMW - there must be something similar in v8 and v9. Peter To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20010209110004.D90937>