aboutsummaryrefslogtreecommitdiffstats
path: root/include/asm-x86/system.h
diff options
context:
space:
mode:
authorVegard Nossum <vegard.nossum@gmail.com>2008-09-14 13:03:53 -0400
committerIngo Molnar <mingo@elte.hu>2008-10-13 04:21:12 -0400
commit33f8c40a30ae99e971d068c9ec6088e713c46f5f (patch)
treefa824ccaf601c7ac388dbd5f5caa03c96c8bba26 /include/asm-x86/system.h
parent3e6de5a393661c5cdabe44115e93bcbde6a742fc (diff)
x86: add memory clobber in switch_to()
Segment registers are reloaded, so we should add a memory clobber. The generated assembly code is identical in my tests, but this doesn't mean it is necessarily true for all configurations/compilers. x86_64 already has the memory clobber. Signed-off-by: Vegard Nossum <vegard.nossum@gmail.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'include/asm-x86/system.h')
-rw-r--r--include/asm-x86/system.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/include/asm-x86/system.h b/include/asm-x86/system.h
index 34505dd7b24..b20c894660f 100644
--- a/include/asm-x86/system.h
+++ b/include/asm-x86/system.h
@@ -64,7 +64,10 @@ do { \
64 \ 64 \
65 /* regparm parameters for __switch_to(): */ \ 65 /* regparm parameters for __switch_to(): */ \
66 [prev] "a" (prev), \ 66 [prev] "a" (prev), \
67 [next] "d" (next)); \ 67 [next] "d" (next) \
68 \
69 : /* reloaded segment registers */ \
70 "memory"); \
68} while (0) 71} while (0)
69 72
70/* 73/*