2009/11/4, Dag-Erling Smrgrav <des@des.no>:
> Attilio Rao <attilio@freebsd.org> writes:
> > Dag-Erling Smrgrav <des@des.no> writes:
> > > According to the reference you gave, OpenSolaris has a workaround for
> > > this issue. Perhaps we should adopt it?
> > IIRC, based on what I readed on-line, it could be still a WARNING msg,
> > but I didn't double-check for it.
>
> Uh, apparently, it can be worked around with an additional lfence
> instruction... See the first couple of comments on that bugzilla page
> you linked to. If the cost is too high, we could make it conditional on
> "options BROKEN_OPTERON_E" or something.
Yeah but the lfence is completely impratical from the overhead POV --
and actually I don't like the idea to add a compile time option based
on family/model.
We could maybe do a mixed approach: printout the WARNING msg only if
the BROKEN_OPTERON_E is not used otherwise be ok.
I still don't like it because it is going to dirty the atomic.h code a
bit, but it can be an acceptable compromise.
Attilio
--
Peace can only be achieved by understanding - A. Einstein