Re: ZFS committed to the FreeBSD base.

From: Sergey Zaharchenko <doublef-ctm_at_yandex.ru>
Date: Fri, 13 Apr 2007 19:29:32 +0400
[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.

-- 
DoubleF
No virus detected in this message. Ehrm, wait a minute...
/kernel: pid 56921 (antivirus), uid 32000: exited on signal 9
Oh yes, no virus:)

Received on Fri Apr 13 2007 - 13:43:49 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:08 UTC