Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 12 Apr 2007 10:54:17 +0200
From:      des@des.no (Dag-Erling =?iso-8859-1?Q?Sm=F8rgrav?=)
To:        Peter Jeremy <peterjeremy@optushome.com.au>
Cc:        freebsd-fs@FreeBSD.ORG, freebsd-current@FreeBSD.ORG, Pawel Jakub Dawidek <pjd@FreeBSD.ORG>, ticso@cicely.de
Subject:   Re: ZFS committed to the FreeBSD base.
Message-ID:  <86ps6aht1i.fsf@dwp.des.no>
In-Reply-To: <20070412073605.GB834@turion.vk2pj.dyndns.org> (Peter Jeremy's message of "Thu, 12 Apr 2007 17:36:06 %2B1000")
References:  <20070406025700.GB98545@garage.freebsd.pl> <86k5wo55s0.fsf@dwp.des.no> <20070407203411.GJ8831@cicely12.cicely.de> <86wt0n3mxv.fsf@dwp.des.no> <20070411214911.GA38351@VARK.MIT.EDU> <20070412073605.GB834@turion.vk2pj.dyndns.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Peter Jeremy <peterjeremy@optushome.com.au> writes:
> There's a feature bit (CPUID_CX8) that advertises the availability of
> cmpxchg8b (and maybe some related instructions).  My pre-MMX 586 has
> this bit set so I presume anything later than 486 will support it.
> (I'm not sure about the low-end VIA, GEODE etc clones).

The Geode is a 486, and does not support it.

The C3 however is a 586.  The C3 Ezra and C3 Samuel / Samuel 2 do not
have CX8.  I'm not sure about the C3 Nehemiah, I don't have one
running at the moment.

> I agree that GENERIC should run on lowest-common-denominator hardware
> (the definition of that is a subject for a different thread).  GENERIC
> performance could be enhanced by using an indirect call for 8-byte
> atomic instructions and selecting between the cmpxchg8b and
> alternative implementation as part of the CPU startup (much like
> i586_bcopy).  If CPU_486 is not defined, you code could inline the
> cmpxchg8b-based variant.

Our native atomic operations are all defined as either macros or
static inline functions in machine/atomic.h, so we can easily make
this choice at compile time based on a config option.

DES
--=20
Dag-Erling Sm=F8rgrav - des@des.no



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?86ps6aht1i.fsf>