summaryrefslogtreecommitdiff
path: root/arch/arm/nwfpe/fpa11.h
diff options
context:
space:
mode:
authorRussell King <rmk@dyn-67.arm.linux.org.uk>2005-07-17 10:54:50 +0100
committerRussell King <rmk+kernel@arm.linux.org.uk>2005-07-17 10:54:50 +0100
commitb66da4a4859b0be3f12575863bf1d873116d1947 (patch)
tree70312c230efd0420817906adc2733489026153e9 /arch/arm/nwfpe/fpa11.h
parentf60f700876cd51de9de69f3a3c865d95e287a24d (diff)
[PATCH] ARM: Remove global nwfpe register variable
Recent changes to nwfpe broke the build with some gcc versions: In file included from arch/arm/nwfpe/softfloat.c:33: arch/arm/nwfpe/fpa11.h:32: global register variable follows a function definition make[1]: *** [arch/arm/nwfpe/softfloat.o] Error 1 Since we now ensure that the kernel stack is empty when returning to user space, we can now access the userspace registers with reference to the kernel stack using current_thread_info(), rather than remembering the stack pointer at the time nwfpe was called. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/nwfpe/fpa11.h')
-rw-r--r--arch/arm/nwfpe/fpa11.h4
1 files changed, 1 insertions, 3 deletions
diff --git a/arch/arm/nwfpe/fpa11.h b/arch/arm/nwfpe/fpa11.h
index 45cc65426a22..e4a61aea534b 100644
--- a/arch/arm/nwfpe/fpa11.h
+++ b/arch/arm/nwfpe/fpa11.h
@@ -29,9 +29,7 @@
* stack+task struct. Use the same method as 'current' uses to
* reach them.
*/
-register unsigned long *user_registers asm("sl");
-
-#define GET_USERREG() (user_registers)
+#define GET_USERREG() ((struct pt_regs *)(THREAD_START_SP + (unsigned long)current_thread_info()) - 1)
#include <linux/config.h>
#include <linux/thread_info.h>