diff options
Diffstat (limited to 'arch/um/kernel/tt/process_kern.c')
| -rw-r--r-- | arch/um/kernel/tt/process_kern.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/arch/um/kernel/tt/process_kern.c b/arch/um/kernel/tt/process_kern.c index cfaa373a6e77..295c1ac817b3 100644 --- a/arch/um/kernel/tt/process_kern.c +++ b/arch/um/kernel/tt/process_kern.c | |||
| @@ -13,13 +13,11 @@ | |||
| 13 | #include "asm/ptrace.h" | 13 | #include "asm/ptrace.h" |
| 14 | #include "asm/tlbflush.h" | 14 | #include "asm/tlbflush.h" |
| 15 | #include "irq_user.h" | 15 | #include "irq_user.h" |
| 16 | #include "signal_user.h" | ||
| 17 | #include "kern_util.h" | 16 | #include "kern_util.h" |
| 18 | #include "user_util.h" | 17 | #include "user_util.h" |
| 19 | #include "os.h" | 18 | #include "os.h" |
| 20 | #include "kern.h" | 19 | #include "kern.h" |
| 21 | #include "sigcontext.h" | 20 | #include "sigcontext.h" |
| 22 | #include "time_user.h" | ||
| 23 | #include "mem_user.h" | 21 | #include "mem_user.h" |
| 24 | #include "tlb.h" | 22 | #include "tlb.h" |
| 25 | #include "mode.h" | 23 | #include "mode.h" |
| @@ -37,7 +35,7 @@ void switch_to_tt(void *prev, void *next) | |||
| 37 | from = prev; | 35 | from = prev; |
| 38 | to = next; | 36 | to = next; |
| 39 | 37 | ||
| 40 | cpu = from->thread_info->cpu; | 38 | cpu = task_thread_info(from)->cpu; |
| 41 | if(cpu == 0) | 39 | if(cpu == 0) |
| 42 | forward_interrupts(to->thread.mode.tt.extern_pid); | 40 | forward_interrupts(to->thread.mode.tt.extern_pid); |
| 43 | #ifdef CONFIG_SMP | 41 | #ifdef CONFIG_SMP |
| @@ -254,7 +252,7 @@ int copy_thread_tt(int nr, unsigned long clone_flags, unsigned long sp, | |||
| 254 | 252 | ||
| 255 | clone_flags &= CLONE_VM; | 253 | clone_flags &= CLONE_VM; |
| 256 | p->thread.temp_stack = stack; | 254 | p->thread.temp_stack = stack; |
| 257 | new_pid = start_fork_tramp(p->thread_info, stack, clone_flags, tramp); | 255 | new_pid = start_fork_tramp(task_stack_page(p), stack, clone_flags, tramp); |
| 258 | if(new_pid < 0){ | 256 | if(new_pid < 0){ |
| 259 | printk(KERN_ERR "copy_thread : clone failed - errno = %d\n", | 257 | printk(KERN_ERR "copy_thread : clone failed - errno = %d\n", |
| 260 | -new_pid); | 258 | -new_pid); |
| @@ -344,7 +342,7 @@ int do_proc_op(void *t, int proc_id) | |||
| 344 | pid = thread->request.u.exec.pid; | 342 | pid = thread->request.u.exec.pid; |
| 345 | do_exec(thread->mode.tt.extern_pid, pid); | 343 | do_exec(thread->mode.tt.extern_pid, pid); |
| 346 | thread->mode.tt.extern_pid = pid; | 344 | thread->mode.tt.extern_pid = pid; |
| 347 | cpu_tasks[task->thread_info->cpu].pid = pid; | 345 | cpu_tasks[task_thread_info(task)->cpu].pid = pid; |
| 348 | break; | 346 | break; |
| 349 | case OP_FORK: | 347 | case OP_FORK: |
| 350 | attach_process(thread->request.u.fork.pid); | 348 | attach_process(thread->request.u.fork.pid); |
| @@ -426,7 +424,7 @@ int start_uml_tt(void) | |||
| 426 | int pages; | 424 | int pages; |
| 427 | 425 | ||
| 428 | pages = (1 << CONFIG_KERNEL_STACK_ORDER); | 426 | pages = (1 << CONFIG_KERNEL_STACK_ORDER); |
| 429 | sp = (void *) ((unsigned long) init_task.thread_info) + | 427 | sp = task_stack_page(&init_task) + |
| 430 | pages * PAGE_SIZE - sizeof(unsigned long); | 428 | pages * PAGE_SIZE - sizeof(unsigned long); |
| 431 | return(tracer(start_kernel_proc, sp)); | 429 | return(tracer(start_kernel_proc, sp)); |
| 432 | } | 430 | } |
