aboutsummaryrefslogtreecommitdiffstats
path: root/arch/um/kernel
diff options
context:
space:
mode:
authorAl Viro <viro@ftp.linux.org.uk>2006-01-12 04:05:48 -0500
committerLinus Torvalds <torvalds@g5.osdl.org>2006-01-12 12:08:53 -0500
commit579b3ea5916d60ade1e04d2a49637e5cbba67eac (patch)
tree9dd96a3fc1e55b3c093ef611edcd16a7aed1f32a /arch/um/kernel
parentca9bc0bb2d1c7afdd34ec79b3de4d16a8e0225e8 (diff)
[PATCH] uml: task_stack_page()
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'arch/um/kernel')
-rw-r--r--arch/um/kernel/skas/process_kern.c4
-rw-r--r--arch/um/kernel/tt/exec_kern.c2
-rw-r--r--arch/um/kernel/tt/process_kern.c4
3 files changed, 5 insertions, 5 deletions
diff --git a/arch/um/kernel/skas/process_kern.c b/arch/um/kernel/skas/process_kern.c
index 09790ccb161c..dc41c6dc2f34 100644
--- a/arch/um/kernel/skas/process_kern.c
+++ b/arch/um/kernel/skas/process_kern.c
@@ -118,7 +118,7 @@ int copy_thread_skas(int nr, unsigned long clone_flags, unsigned long sp,
118 handler = new_thread_handler; 118 handler = new_thread_handler;
119 } 119 }
120 120
121 new_thread(p->thread_info, &p->thread.mode.skas.switch_buf, 121 new_thread(task_stack_page(p), &p->thread.mode.skas.switch_buf,
122 &p->thread.mode.skas.fork_buf, handler); 122 &p->thread.mode.skas.fork_buf, handler);
123 return(0); 123 return(0);
124} 124}
@@ -185,7 +185,7 @@ int start_uml_skas(void)
185 185
186 init_task.thread.request.u.thread.proc = start_kernel_proc; 186 init_task.thread.request.u.thread.proc = start_kernel_proc;
187 init_task.thread.request.u.thread.arg = NULL; 187 init_task.thread.request.u.thread.arg = NULL;
188 return(start_idle_thread(init_task.thread_info, 188 return(start_idle_thread(task_stack_page(&init_task),
189 &init_task.thread.mode.skas.switch_buf, 189 &init_task.thread.mode.skas.switch_buf,
190 &init_task.thread.mode.skas.fork_buf)); 190 &init_task.thread.mode.skas.fork_buf));
191} 191}
diff --git a/arch/um/kernel/tt/exec_kern.c b/arch/um/kernel/tt/exec_kern.c
index 136e54c47d37..8f40e4838736 100644
--- a/arch/um/kernel/tt/exec_kern.c
+++ b/arch/um/kernel/tt/exec_kern.c
@@ -39,7 +39,7 @@ void flush_thread_tt(void)
39 do_exit(SIGKILL); 39 do_exit(SIGKILL);
40 } 40 }
41 41
42 new_pid = start_fork_tramp(current->thread_info, stack, 0, exec_tramp); 42 new_pid = start_fork_tramp(task_stack_page(current), stack, 0, exec_tramp);
43 if(new_pid < 0){ 43 if(new_pid < 0){
44 printk(KERN_ERR 44 printk(KERN_ERR
45 "flush_thread : new thread failed, errno = %d\n", 45 "flush_thread : new thread failed, errno = %d\n",
diff --git a/arch/um/kernel/tt/process_kern.c b/arch/um/kernel/tt/process_kern.c
index 1f7dec87b6c1..62535303aa27 100644
--- a/arch/um/kernel/tt/process_kern.c
+++ b/arch/um/kernel/tt/process_kern.c
@@ -253,7 +253,7 @@ int copy_thread_tt(int nr, unsigned long clone_flags, unsigned long sp,
253 253
254 clone_flags &= CLONE_VM; 254 clone_flags &= CLONE_VM;
255 p->thread.temp_stack = stack; 255 p->thread.temp_stack = stack;
256 new_pid = start_fork_tramp(p->thread_info, stack, clone_flags, tramp); 256 new_pid = start_fork_tramp(task_stack_page(p), stack, clone_flags, tramp);
257 if(new_pid < 0){ 257 if(new_pid < 0){
258 printk(KERN_ERR "copy_thread : clone failed - errno = %d\n", 258 printk(KERN_ERR "copy_thread : clone failed - errno = %d\n",
259 -new_pid); 259 -new_pid);
@@ -425,7 +425,7 @@ int start_uml_tt(void)
425 int pages; 425 int pages;
426 426
427 pages = (1 << CONFIG_KERNEL_STACK_ORDER); 427 pages = (1 << CONFIG_KERNEL_STACK_ORDER);
428 sp = (void *) ((unsigned long) init_task.thread_info) + 428 sp = task_stack_page(&init_task) +
429 pages * PAGE_SIZE - sizeof(unsigned long); 429 pages * PAGE_SIZE - sizeof(unsigned long);
430 return(tracer(start_kernel_proc, sp)); 430 return(tracer(start_kernel_proc, sp));
431} 431}