[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <4A199902.2080705@gmail.com>
Date: Sun, 24 May 2009 12:59:14 -0600
From: Robert Hancock <hancockrwd@...il.com>
To: lkml@...eThan.org
CC: Samuel Thibault <samuel.thibault@...-lyon.org>,
Andi Kleen <andi@...stfloor.org>, linux-kernel@...r.kernel.org
Subject: Re: [BUG FIX] Make x86_32 uni-processor Atomic ops, Atomic
Michael S. Zick wrote:
> On Fri May 22 2009, Samuel Thibault wrote:
>> Michael S. Zick, le Fri 22 May 2009 14:53:39 -0500, a écrit :
>>> 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.
>> Where do you see page 638/639 talking about interrupts? It talks about
>> multi-processor machines.
>>
>
> No - it talks about "exclusive memory access" - You got bus master DMA
> in your test machine? You also have an older than P-4 single processor?
It means that LOCK is required in multi-processor environment to ensure
that an instruction executes atomically WRT memory operations being done
on other CPUs. On a single processor, except for some weird exceptions
(like rep instructions, which can't be LOCKed anyways), instructions are
always atomic with respect to interrupts.
>
> Look people, I just reported what I found from testing -
> Please don't shoot the messanger.
>
> If it: "Does not make a difference" then it "Should not make a difference"
> but it does, try it yourself. Its safe (if LOCK_PREFIX is in the proper
> places) - the machine will ignore the opcode if is recent enough to not
> need it - just trust the cpu's micro-code.
What do you mean "recent enough to not need it?" There is no such thing.
On any x86 machine it does something. It will slow things down, and
there is no reason it should be required on uni-processor systems.
Quite likely that's the only effect adding the LOCK prefix is having,
slowing things down, and covering up whatever is causing your issue,
without having anything to do with the root cause.
>
> Mike
>> Samuel
>>
>>
>
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists