diff options
-rw-r--r-- | arch/m68k/include/asm/processor.h | 4 | ||||
-rw-r--r-- | arch/m68k/kernel/process_mm.c | 2 | ||||
-rw-r--r-- | arch/m68k/kernel/process_no.c | 2 |
3 files changed, 2 insertions, 6 deletions
diff --git a/arch/m68k/include/asm/processor.h b/arch/m68k/include/asm/processor.h index f111b02b704f..d8ef53ac03f9 100644 --- a/arch/m68k/include/asm/processor.h +++ b/arch/m68k/include/asm/processor.h | |||
@@ -105,9 +105,6 @@ struct thread_struct { | |||
105 | static inline void start_thread(struct pt_regs * regs, unsigned long pc, | 105 | static inline void start_thread(struct pt_regs * regs, unsigned long pc, |
106 | unsigned long usp) | 106 | unsigned long usp) |
107 | { | 107 | { |
108 | /* reads from user space */ | ||
109 | set_fs(USER_DS); | ||
110 | |||
111 | regs->pc = pc; | 108 | regs->pc = pc; |
112 | regs->sr &= ~0x2000; | 109 | regs->sr &= ~0x2000; |
113 | wrusp(usp); | 110 | wrusp(usp); |
@@ -129,7 +126,6 @@ extern int handle_kernel_fault(struct pt_regs *regs); | |||
129 | 126 | ||
130 | #define start_thread(_regs, _pc, _usp) \ | 127 | #define start_thread(_regs, _pc, _usp) \ |
131 | do { \ | 128 | do { \ |
132 | set_fs(USER_DS); /* reads from user space */ \ | ||
133 | (_regs)->pc = (_pc); \ | 129 | (_regs)->pc = (_pc); \ |
134 | ((struct switch_stack *)(_regs))[-1].a6 = 0; \ | 130 | ((struct switch_stack *)(_regs))[-1].a6 = 0; \ |
135 | reformat(_regs); \ | 131 | reformat(_regs); \ |
diff --git a/arch/m68k/kernel/process_mm.c b/arch/m68k/kernel/process_mm.c index c2a1fc23dd75..1bc223aa07ec 100644 --- a/arch/m68k/kernel/process_mm.c +++ b/arch/m68k/kernel/process_mm.c | |||
@@ -185,7 +185,7 @@ EXPORT_SYMBOL(kernel_thread); | |||
185 | void flush_thread(void) | 185 | void flush_thread(void) |
186 | { | 186 | { |
187 | unsigned long zero = 0; | 187 | unsigned long zero = 0; |
188 | set_fs(USER_DS); | 188 | |
189 | current->thread.fs = __USER_DS; | 189 | current->thread.fs = __USER_DS; |
190 | if (!FPU_IS_EMU) | 190 | if (!FPU_IS_EMU) |
191 | asm volatile (".chip 68k/68881\n\t" | 191 | asm volatile (".chip 68k/68881\n\t" |
diff --git a/arch/m68k/kernel/process_no.c b/arch/m68k/kernel/process_no.c index 9b86ad11c68e..69c1803fcf1b 100644 --- a/arch/m68k/kernel/process_no.c +++ b/arch/m68k/kernel/process_no.c | |||
@@ -158,7 +158,7 @@ void flush_thread(void) | |||
158 | #ifdef CONFIG_FPU | 158 | #ifdef CONFIG_FPU |
159 | unsigned long zero = 0; | 159 | unsigned long zero = 0; |
160 | #endif | 160 | #endif |
161 | set_fs(USER_DS); | 161 | |
162 | current->thread.fs = __USER_DS; | 162 | current->thread.fs = __USER_DS; |
163 | #ifdef CONFIG_FPU | 163 | #ifdef CONFIG_FPU |
164 | if (!FPU_IS_EMU) | 164 | if (!FPU_IS_EMU) |