ZFS committed to the FreeBSD base.

Sergey Zaharchenko doublef-ctm at yandex.ru
Fri Apr 13 15:43:49 UTC 2007

[cc list trimmed]

Hello Oliver!

Fri, Apr 13, 2007 at 04:52:45PM +0200 you wrote:

> Using cmpxchg8b with a lock prefix wouldn't be a good idea
> anyway.  If I remember correctly, the lock cmpxchg8b
> combination was the cause of the infamous "F00F" bug of
> old Pentium processors.  It causes them to freeze.

AFAICT the bug only manifested itself when the instruction had an
invalid register operand:

www.intel.com/support/processors/pentium/ppiie/ :

> It is illegal to use a register as the destination. ... If a
> register is used as the destination, the processor normally stops
> execution of the CMPXCH8B instruction, signals this error
> condition and executes an error handler in software.
> This erratum occurs if the CMPXCHG8B instruction is also locked ...
> and an invalid register destination is used.

So normal instructions should be OK. The fix was there to protect the
system from malicious code which could hang it.

No virus detected in this message. Ehrm, wait a minute...
/kernel: pid 56921 (antivirus), uid 32000: exited on signal 9
Oh yes, no virus:)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-current/attachments/20070413/c565aca9/attachment.pgp

More information about the freebsd-current mailing list