Messages in this thread |  | | | From | "Michael S. Zick" <> | | Subject | Re: [BUG FIX] Make x86_32 uni-processor Atomic ops, Atomic | | Date | Fri, 22 May 2009 14:53:39 -0500 |
| |
On Fri May 22 2009, Andi Kleen wrote: > On Fri, May 22, 2009 at 01:43:27PM -0500, Michael S. Zick wrote: > > On Fri May 22 2009, you wrote: > > > "Michael S. Zick" <lkml@morethan.org> writes: > > > > > > > Found in the bit-rot for 32-bit, x86, Uni-processor builds: > > > > > > Actually uni processor should not use the lock prefix > > > because it doesn't need it; the only exception are some special > > > ops used in para-virtualization which are special cased. > > > > > > > Unless you have interrupts enabled, then you have two contexts. > > Interrupts on the local CPU don't interrupt instructions, only > inbetween. >
Ref: http://developer.intel.com/Assets/PDF/manual/253666.pdf Manual page: 3-590 PDF page: 638 Summary: Processors prior to P-4 can take an interrupt between the read cycle and the write cycle. Which is why opcode 0xF0 exists.
Mike
> -Andi
|  |