This fixes write_ldt_entry to treat userspace_pid as an array.
Signed-off-by: Jeff Dike <[email protected]>
Index: linux-2.6.11/arch/um/sys-i386/ldt.c
===================================================================
--- linux-2.6.11.orig/arch/um/sys-i386/ldt.c 2005-04-13 18:20:01.000000000 -0400
+++ linux-2.6.11/arch/um/sys-i386/ldt.c 2005-04-13 18:20:27.000000000 -0400
@@ -25,7 +25,7 @@
#endif
#ifdef CONFIG_MODE_SKAS
-extern int userspace_pid;
+extern int userspace_pid[];
#include "skas_ptrace.h"
@@ -56,7 +56,8 @@
ldt = ((struct ptrace_ldt) { .func = func,
.ptr = buf,
.bytecount = bytecount });
- res = ptrace(PTRACE_LDT, userspace_pid, 0, (unsigned long) &ldt);
+#warning Need to look up userspace_pid by cpu
+ res = ptrace(PTRACE_LDT, userspace_pid[0], 0, (unsigned long) &ldt);
if(res < 0)
goto out;