aboutsummaryrefslogtreecommitdiffstats
path: root/arch/i386
diff options
context:
space:
mode:
authorJeremy Fitzhardinge <jeremy@goop.org>2006-10-21 18:37:02 +0200
committerAndi Kleen <andi@basil.nowhere.org>2006-10-21 18:37:02 +0200
commit26fd5e084e470dbe8edc6f726fc918e89b9f988c (patch)
tree7975f626dfcc56ee92dd4e07954cab16c147b00d /arch/i386
parent[PATCH] x86-64: x86_64 add NX mask for PTE entry (diff)
downloadlinux-dev-26fd5e084e470dbe8edc6f726fc918e89b9f988c.tar.xz
linux-dev-26fd5e084e470dbe8edc6f726fc918e89b9f988c.zip
[PATCH] i386: Fix fake return address
The fake return address was being set to __KERNEL_PDA, rather than 0. Push it earlier while %eax still equals 0. Signed-off-by: Jeremy Fitzhardinge <jeremy@xensource.com> Signed-off-by: Andi Kleen <ak@suse.de> Cc: Andi Kleen <ak@muc.de> Cc: Andrew Morton <akpm@osdl.org>
Diffstat (limited to 'arch/i386')
-rw-r--r--arch/i386/kernel/head.S2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/i386/kernel/head.S b/arch/i386/kernel/head.S
index be9d883c62ce..ca31f18d277c 100644
--- a/arch/i386/kernel/head.S
+++ b/arch/i386/kernel/head.S
@@ -317,7 +317,7 @@ is386: movl $2,%ecx # set MP
movl %eax,%gs
lldt %ax
cld # gcc2 wants the direction flag cleared at all times
- pushl %eax # fake return address
+ pushl $0 # fake return address for unwinder
#ifdef CONFIG_SMP
movb ready, %cl
movb $1, ready