summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorManfred Spraul <manfred@colorfullife.com>2002-12-21 20:04:34 -0800
committerLinus Torvalds <torvalds@home.transmeta.com>2002-12-21 20:04:34 -0800
commit5e163a89fedacf47100735e738c43687d3bf18a2 (patch)
treec124ec63485ef54cf644ecb80461e4adb5173032 /include
parentd21918b6a35805753c9f08f7d3eb29004ec86066 (diff)
[PATCH] reorder 'rep;nop;' in the spinlock macro
According to Intel's recommendation, 'rep;nop; should be called before testing if the lock variable was modified (i.e. rep nop;cmp;jcc). The current implementation does it the wrong way around: first test, then wait, then branch. I've asked Asit Mallik from Intel, and he recommended to change it. It should be at least consistent: Right now, spinlock uses 'cmp;rep nop;jcc', rwlock uses 'rep nop;cmp;jcc'
Diffstat (limited to 'include')
-rw-r--r--include/asm-i386/spinlock.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/include/asm-i386/spinlock.h b/include/asm-i386/spinlock.h
index d26bf652d894..ae3615feecdb 100644
--- a/include/asm-i386/spinlock.h
+++ b/include/asm-i386/spinlock.h
@@ -48,8 +48,8 @@ typedef struct {
"js 2f\n" \
LOCK_SECTION_START("") \
"2:\t" \
- "cmpb $0,%0\n\t" \
"rep;nop\n\t" \
+ "cmpb $0,%0\n\t" \
"jle 2b\n\t" \
"jmp 1b\n" \
LOCK_SECTION_END