Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 15 Dec 2000 13:19:25 -0800 (PST)
From:      John Baldwin <jhb@FreeBSD.org>
To:        Bernd Walter <ticso@cicely5.cicely.de>
Cc:        freebsd-alpha@FreeBSD.org
Subject:   Re: mb and wmb in atomic_
Message-ID:  <XFMail.001215131925.jhb@FreeBSD.org>
In-Reply-To: <20001215211930.D62048@cicely5.cicely.de>

next in thread | previous in thread | raw e-mail | index | archive | help

On 15-Dec-00 Bernd Walter wrote:
> On Fri, Dec 15, 2000 at 11:35:47AM -0800, John Baldwin wrote:
>> 
>> On 15-Dec-00 Bernd Walter wrote:
>> > Why are the mb and wmb operations needed in the atomic_ functions?
>> > If I understood it correctly the locked operations are in synced
>> > with others CPUs and there is no memory operation beside the variable
>> > itself.
>> 
>> They should probably only be used with the 'acq' and 'rel' variants.  Hmm,
>> btw,
>> it looks like I have the order of the barriers in the 'acq' and 'rel'
>> variants
>> wrong.  The barriers should be on the inside, not the outside.  Anyone
>> disagree?
> 
> Depending on atomic(9) I agree.
> I don't asume the acq variant realy needs one as the locked operation
> should be finished at once at least out of the CPUs thus no post operation
> has the chance to make anything before.
> Do we have the situation anywhere that the bus reorders memory access?
> Do we care about this?

Can the CPU perform out-of-order execution though?  And out-of-order memory
accesses as a result?  That is what memory barriers really protect you against.

-- 

John Baldwin <jhb@FreeBSD.org> -- http://www.FreeBSD.org/~jhb/
PGP Key: http://www.baldwin.cx/~john/pgpkey.asc
"Power Users Use the Power to Serve!"  -  http://www.FreeBSD.org/


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-alpha" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?XFMail.001215131925.jhb>