[S390] Add set_fs(USER_DS) to start_thread().

From: Martin Schwidefsky
Date: Fri Feb 02 2007 - 09:22:47 EST


From: Heiko Carstens <heiko.carstens@xxxxxxxxxx>

[S390] Add set_fs(USER_DS) to start_thread().

Currently works anyway since search_binary_handler has a
set_fs(USER_DS). But start_thread() is the place where this should be
done. Following all other architectures...

Signed-off-by: Heiko Carstens <heiko.carstens@xxxxxxxxxx>
Signed-off-by: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>
---

include/asm-s390/processor.h | 3 +++
1 files changed, 3 insertions(+)

diff -urpN linux-2.6/include/asm-s390/processor.h linux-2.6-patched/include/asm-s390/processor.h
--- linux-2.6/include/asm-s390/processor.h 2007-02-02 14:04:34.000000000 +0100
+++ linux-2.6-patched/include/asm-s390/processor.h 2007-02-02 14:04:42.000000000 +0100
@@ -144,6 +144,7 @@ struct stack_frame {
#ifndef __s390x__

#define start_thread(regs, new_psw, new_stackp) do { \
+ set_fs(USER_DS); \
regs->psw.mask = PSW_USER_BITS; \
regs->psw.addr = new_psw | PSW_ADDR_AMODE; \
regs->gprs[15] = new_stackp ; \
@@ -152,12 +153,14 @@ struct stack_frame {
#else /* __s390x__ */

#define start_thread(regs, new_psw, new_stackp) do { \
+ set_fs(USER_DS); \
regs->psw.mask = PSW_USER_BITS; \
regs->psw.addr = new_psw; \
regs->gprs[15] = new_stackp; \
} while (0)

#define start_thread31(regs, new_psw, new_stackp) do { \
+ set_fs(USER_DS); \
regs->psw.mask = PSW_USER32_BITS; \
regs->psw.addr = new_psw; \
regs->gprs[15] = new_stackp; \
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/