diff options
author | Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it> | 2006-02-24 16:03:55 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-02-24 17:31:37 -0500 |
commit | 07f4e2c61c76e8b543c0a2589063aea85c15fb25 (patch) | |
tree | 7a43503115b18d26b5baed9c5bb9263469a5587f /arch/um/sys-i386/ldt.c | |
parent | 31bc5a33346b6dd35be219d1416449e0064e9123 (diff) |
[PATCH] uml: fix usage of kernel_errno in place of errno
To avoid conflicts, in kernel files errno is expanded to kernel_errno, to
distinguish it from glibc errno. In this case, the code wants to use the libc
errno but the kernel one is used; in the other usage, we return errno in place
of -errno in case of an error.
Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
Acked-by: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'arch/um/sys-i386/ldt.c')
-rw-r--r-- | arch/um/sys-i386/ldt.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/arch/um/sys-i386/ldt.c b/arch/um/sys-i386/ldt.c index 1fa09a79a10b..fe0877b3509c 100644 --- a/arch/um/sys-i386/ldt.c +++ b/arch/um/sys-i386/ldt.c | |||
@@ -107,7 +107,7 @@ long write_ldt_entry(struct mm_id * mm_idp, int func, struct user_desc * desc, | |||
107 | * So we need to switch child's mm into our userspace, then | 107 | * So we need to switch child's mm into our userspace, then |
108 | * later switch back. | 108 | * later switch back. |
109 | * | 109 | * |
110 | * Note: I'm unshure: should interrupts be disabled here? | 110 | * Note: I'm unsure: should interrupts be disabled here? |
111 | */ | 111 | */ |
112 | if(!current->active_mm || current->active_mm == &init_mm || | 112 | if(!current->active_mm || current->active_mm == &init_mm || |
113 | mm_idp != ¤t->active_mm->context.skas.id) | 113 | mm_idp != ¤t->active_mm->context.skas.id) |
@@ -129,9 +129,7 @@ long write_ldt_entry(struct mm_id * mm_idp, int func, struct user_desc * desc, | |||
129 | pid = userspace_pid[cpu]; | 129 | pid = userspace_pid[cpu]; |
130 | } | 130 | } |
131 | 131 | ||
132 | res = ptrace(PTRACE_LDT, pid, 0, (unsigned long) &ldt_op); | 132 | res = os_ptrace_ldt(pid, 0, (unsigned long) &ldt_op); |
133 | if(res) | ||
134 | res = errno; | ||
135 | 133 | ||
136 | if(proc_mm) | 134 | if(proc_mm) |
137 | put_cpu(); | 135 | put_cpu(); |
@@ -181,8 +179,7 @@ static long read_ldt_from_host(void __user * ptr, unsigned long bytecount) | |||
181 | */ | 179 | */ |
182 | 180 | ||
183 | cpu = get_cpu(); | 181 | cpu = get_cpu(); |
184 | res = ptrace(PTRACE_LDT, userspace_pid[cpu], 0, | 182 | res = os_ptrace_ldt(userspace_pid[cpu], 0, (unsigned long) &ptrace_ldt); |
185 | (unsigned long) &ptrace_ldt); | ||
186 | put_cpu(); | 183 | put_cpu(); |
187 | if(res < 0) | 184 | if(res < 0) |
188 | goto out; | 185 | goto out; |