diff options
author | Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it> | 2006-03-31 05:30:23 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-03-31 15:18:52 -0500 |
commit | dd77aec07aec5cb81aed3b4ef79c1ff8bd0e2a68 (patch) | |
tree | 2f1e75e362acce09b789a309b685a1d791b35a24 /arch/um/os-Linux | |
parent | aa6758d4867cd07bd76105ade6177fe6148e559a (diff) |
[PATCH] uml: tls support: hack to make it compile on any host
Copy the definition of struct user_desc (with another name) for use by
userspace sources (where we use the host headers, and we can't be sure about
their content) to make sure UML compiles.
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/os-Linux')
-rw-r--r-- | arch/um/os-Linux/tls.c | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/arch/um/os-Linux/tls.c b/arch/um/os-Linux/tls.c index 63dfcf709377..642db553ab60 100644 --- a/arch/um/os-Linux/tls.c +++ b/arch/um/os-Linux/tls.c | |||
@@ -1,6 +1,7 @@ | |||
1 | #include <errno.h> | 1 | #include <errno.h> |
2 | #include <sys/ptrace.h> | 2 | #include <sys/ptrace.h> |
3 | #include <asm/ldt.h> | 3 | #include <asm/ldt.h> |
4 | #include "sysdep/tls.h" | ||
4 | #include "uml-config.h" | 5 | #include "uml-config.h" |
5 | 6 | ||
6 | /* TLS support - we basically rely on the host's one.*/ | 7 | /* TLS support - we basically rely on the host's one.*/ |
@@ -18,9 +19,8 @@ | |||
18 | #define PTRACE_SET_THREAD_AREA 26 | 19 | #define PTRACE_SET_THREAD_AREA 26 |
19 | #endif | 20 | #endif |
20 | 21 | ||
21 | int os_set_thread_area(void *data, int pid) | 22 | int os_set_thread_area(user_desc_t *info, int pid) |
22 | { | 23 | { |
23 | struct user_desc *info = data; | ||
24 | int ret; | 24 | int ret; |
25 | 25 | ||
26 | ret = ptrace(PTRACE_SET_THREAD_AREA, pid, info->entry_number, | 26 | ret = ptrace(PTRACE_SET_THREAD_AREA, pid, info->entry_number, |
@@ -32,9 +32,8 @@ int os_set_thread_area(void *data, int pid) | |||
32 | 32 | ||
33 | #ifdef UML_CONFIG_MODE_SKAS | 33 | #ifdef UML_CONFIG_MODE_SKAS |
34 | 34 | ||
35 | int os_get_thread_area(void *data, int pid) | 35 | int os_get_thread_area(user_desc_t *info, int pid) |
36 | { | 36 | { |
37 | struct user_desc *info = data; | ||
38 | int ret; | 37 | int ret; |
39 | 38 | ||
40 | ret = ptrace(PTRACE_GET_THREAD_AREA, pid, info->entry_number, | 39 | ret = ptrace(PTRACE_GET_THREAD_AREA, pid, info->entry_number, |
@@ -49,10 +48,10 @@ int os_get_thread_area(void *data, int pid) | |||
49 | #ifdef UML_CONFIG_MODE_TT | 48 | #ifdef UML_CONFIG_MODE_TT |
50 | #include "linux/unistd.h" | 49 | #include "linux/unistd.h" |
51 | 50 | ||
52 | _syscall1(int, get_thread_area, struct user_desc *, u_info); | 51 | _syscall1(int, get_thread_area, user_desc_t *, u_info); |
53 | _syscall1(int, set_thread_area, struct user_desc *, u_info); | 52 | _syscall1(int, set_thread_area, user_desc_t *, u_info); |
54 | 53 | ||
55 | int do_set_thread_area_tt(struct user_desc *info) | 54 | int do_set_thread_area_tt(user_desc_t *info) |
56 | { | 55 | { |
57 | int ret; | 56 | int ret; |
58 | 57 | ||
@@ -63,7 +62,7 @@ int do_set_thread_area_tt(struct user_desc *info) | |||
63 | return ret; | 62 | return ret; |
64 | } | 63 | } |
65 | 64 | ||
66 | int do_get_thread_area_tt(struct user_desc *info) | 65 | int do_get_thread_area_tt(user_desc_t *info) |
67 | { | 66 | { |
68 | int ret; | 67 | int ret; |
69 | 68 | ||