Commit a5a678c80beac4d163babda243a27eeb9c89bd89

Authored by Jeff Dike
Committed by Linus Torvalds
1 parent 009ec2a915

uml: current.h cleanup

Tidy current-related stuff.  There was a comment in current.h saying
that current_thread was obsolete, so this patch turns all instances of
current_thread into current_thread_info().  There's some simplifying
of the result in arch/um/sys-i386/signal.c.

current.h and thread_info also get style cleanups.

Signed-off-by: Jeff Dike <jdike@linux.intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

Showing 5 changed files with 20 additions and 41 deletions Side-by-side Diff

arch/um/kernel/process.c
... ... @@ -251,7 +251,7 @@
251 251  
252 252 void cpu_idle(void)
253 253 {
254   - cpu_tasks[current_thread->cpu].pid = os_getpid();
  254 + cpu_tasks[current_thread_info()->cpu].pid = os_getpid();
255 255 default_idle();
256 256 }
257 257  
... ... @@ -269,7 +269,7 @@
269 269 unsigned long stack;
270 270  
271 271 stack = sp & (PAGE_MASK << CONFIG_KERNEL_STACK_ORDER);
272   - return stack != (unsigned long) current_thread;
  272 + return stack != (unsigned long) current_thread_info();
273 273 }
274 274  
275 275 extern exitcall_t __uml_exitcall_begin, __uml_exitcall_end;
... ... @@ -311,7 +311,7 @@
311 311 int smp_sigio_handler(void)
312 312 {
313 313 #ifdef CONFIG_SMP
314   - int cpu = current_thread->cpu;
  314 + int cpu = current_thread_info()->cpu;
315 315 IPI_handler(cpu);
316 316 if (cpu != 0)
317 317 return 1;
... ... @@ -321,7 +321,7 @@
321 321  
322 322 int cpu(void)
323 323 {
324   - return current_thread->cpu;
  324 + return current_thread_info()->cpu;
325 325 }
326 326  
327 327 static atomic_t using_sysemu = ATOMIC_INIT(0);
arch/um/sys-i386/signal.c
... ... @@ -168,12 +168,13 @@
168 168 struct sigcontext __user *from)
169 169 {
170 170 struct sigcontext sc;
171   - int err;
  171 + int err, pid;
172 172  
173 173 err = copy_from_user(&sc, from, sizeof(sc));
174 174 if (err)
175 175 return err;
176 176  
  177 + pid = userspace_pid[current_thread_info()->cpu];
177 178 copy_sc(&regs->regs, &sc);
178 179 if (have_fpx_regs) {
179 180 struct user_fxsr_struct fpx;
... ... @@ -187,8 +188,7 @@
187 188 if (err)
188 189 return 1;
189 190  
190   - err = restore_fpx_registers(userspace_pid[current_thread->cpu],
191   - (unsigned long *) &fpx);
  191 + err = restore_fpx_registers(pid, (unsigned long *) &fpx);
192 192 if (err < 0) {
193 193 printk(KERN_ERR "copy_sc_from_user - "
194 194 "restore_fpx_registers failed, errno = %d\n",
... ... @@ -204,8 +204,7 @@
204 204 if (err)
205 205 return 1;
206 206  
207   - err = restore_fp_registers(userspace_pid[current_thread->cpu],
208   - (unsigned long *) &fp);
  207 + err = restore_fp_registers(pid, (unsigned long *) &fp);
209 208 if (err < 0) {
210 209 printk(KERN_ERR "copy_sc_from_user - "
211 210 "restore_fp_registers failed, errno = %d\n",
... ... @@ -223,7 +222,7 @@
223 222 {
224 223 struct sigcontext sc;
225 224 struct faultinfo * fi = &current->thread.arch.faultinfo;
226   - int err;
  225 + int err, pid;
227 226  
228 227 sc.gs = REGS_GS(regs->regs.gp);
229 228 sc.fs = REGS_FS(regs->regs.gp);
230 229  
... ... @@ -249,11 +248,11 @@
249 248 to_fp = (to_fp ? to_fp : (struct _fpstate __user *) (to + 1));
250 249 sc.fpstate = to_fp;
251 250  
  251 + pid = userspace_pid[current_thread_info()->cpu];
252 252 if (have_fpx_regs) {
253 253 struct user_fxsr_struct fpx;
254 254  
255   - err = save_fpx_registers(userspace_pid[current_thread->cpu],
256   - (unsigned long *) &fpx);
  255 + err = save_fpx_registers(pid, (unsigned long *) &fpx);
257 256 if (err < 0){
258 257 printk(KERN_ERR "copy_sc_to_user - save_fpx_registers "
259 258 "failed, errno = %d\n", err);
... ... @@ -276,8 +275,7 @@
276 275 else {
277 276 struct user_i387_struct fp;
278 277  
279   - err = save_fp_registers(userspace_pid[current_thread->cpu],
280   - (unsigned long *) &fp);
  278 + err = save_fp_registers(pid, (unsigned long *) &fp);
281 279 if (copy_to_user(to_fp, &fp, sizeof(struct user_i387_struct)))
282 280 return 1;
283 281 }
arch/um/sys-x86_64/signal.c
... ... @@ -81,7 +81,7 @@
81 81 if (err)
82 82 return 1;
83 83  
84   - err = restore_fp_registers(userspace_pid[current_thread->cpu],
  84 + err = restore_fp_registers(userspace_pid[current_thread_info()->cpu],
85 85 (unsigned long *) &fp);
86 86 if (err < 0) {
87 87 printk(KERN_ERR "copy_sc_from_user - "
... ... @@ -143,7 +143,7 @@
143 143 if (err)
144 144 return 1;
145 145  
146   - err = save_fp_registers(userspace_pid[current_thread->cpu],
  146 + err = save_fp_registers(userspace_pid[current_thread_info()->cpu],
147 147 (unsigned long *) &fp);
148 148 if (err < 0) {
149 149 printk(KERN_ERR "copy_sc_from_user - restore_fp_registers "
include/asm-um/current.h
1   -/*
2   - * Copyright (C) 2000 Jeff Dike (jdike@karaya.com)
  1 +/*
  2 + * Copyright (C) 2000 - 2007 Jeff Dike (jdike@{addtoit,linux.intel}.com)
3 3 * Licensed under the GPL
4 4 */
5 5  
6 6 #ifndef __UM_CURRENT_H
7 7 #define __UM_CURRENT_H
8 8  
9   -#ifndef __ASSEMBLY__
10   -
11   -#include "asm/page.h"
12 9 #include "linux/thread_info.h"
13 10  
14 11 #define current (current_thread_info()->task)
15 12  
16   -/*Backward compatibility - it's used inside arch/um.*/
17   -#define current_thread current_thread_info()
18   -
19   -#endif /* __ASSEMBLY__ */
20   -
21 13 #endif
22   -
23   -/*
24   - * Overrides for Emacs so that we follow Linus's tabbing style.
25   - * Emacs will notice this stuff at the end of the file and automatically
26   - * adjust the settings for this buffer only. This must remain at the end
27   - * of the file.
28   - * ---------------------------------------------------------------------------
29   - * Local variables:
30   - * c-file-style: "linux"
31   - * End:
32   - */
include/asm-um/thread_info.h
1   -/*
2   - * Copyright (C) 2002 Jeff Dike (jdike@karaya.com)
  1 +/*
  2 + * Copyright (C) 2002 - 2007 Jeff Dike (jdike@{addtoit,linux.intel}.com)
3 3 * Licensed under the GPL
4 4 */
5 5  
... ... @@ -76,8 +76,8 @@
76 76 #define TIF_SYSCALL_TRACE 0 /* syscall trace active */
77 77 #define TIF_SIGPENDING 1 /* signal pending */
78 78 #define TIF_NEED_RESCHED 2 /* rescheduling necessary */
79   -#define TIF_POLLING_NRFLAG 3 /* true if poll_idle() is polling
80   - * TIF_NEED_RESCHED
  79 +#define TIF_POLLING_NRFLAG 3 /* true if poll_idle() is polling
  80 + * TIF_NEED_RESCHED
81 81 */
82 82 #define TIF_RESTART_BLOCK 4
83 83 #define TIF_MEMDIE 5