diff options
-rw-r--r-- | include/linux/personality.h | 2 | ||||
-rw-r--r-- | include/linux/syscalls.h | 2 | ||||
-rw-r--r-- | kernel/exec_domain.c | 18 |
3 files changed, 11 insertions, 11 deletions
diff --git a/include/linux/personality.h b/include/linux/personality.h index 126120819a0d..eec3bae164d4 100644 --- a/include/linux/personality.h +++ b/include/linux/personality.h | |||
@@ -12,7 +12,7 @@ struct pt_regs; | |||
12 | 12 | ||
13 | extern int register_exec_domain(struct exec_domain *); | 13 | extern int register_exec_domain(struct exec_domain *); |
14 | extern int unregister_exec_domain(struct exec_domain *); | 14 | extern int unregister_exec_domain(struct exec_domain *); |
15 | extern int __set_personality(unsigned long); | 15 | extern int __set_personality(unsigned int); |
16 | 16 | ||
17 | #endif /* __KERNEL__ */ | 17 | #endif /* __KERNEL__ */ |
18 | 18 | ||
diff --git a/include/linux/syscalls.h b/include/linux/syscalls.h index a1a86a53bc73..7f614ce274a9 100644 --- a/include/linux/syscalls.h +++ b/include/linux/syscalls.h | |||
@@ -289,7 +289,7 @@ asmlinkage long sys_capget(cap_user_header_t header, | |||
289 | cap_user_data_t dataptr); | 289 | cap_user_data_t dataptr); |
290 | asmlinkage long sys_capset(cap_user_header_t header, | 290 | asmlinkage long sys_capset(cap_user_header_t header, |
291 | const cap_user_data_t data); | 291 | const cap_user_data_t data); |
292 | asmlinkage long sys_personality(u_long personality); | 292 | asmlinkage long sys_personality(unsigned int personality); |
293 | 293 | ||
294 | asmlinkage long sys_sigpending(old_sigset_t __user *set); | 294 | asmlinkage long sys_sigpending(old_sigset_t __user *set); |
295 | asmlinkage long sys_sigprocmask(int how, old_sigset_t __user *set, | 295 | asmlinkage long sys_sigprocmask(int how, old_sigset_t __user *set, |
diff --git a/kernel/exec_domain.c b/kernel/exec_domain.c index c35452cadded..dd62f8e714ca 100644 --- a/kernel/exec_domain.c +++ b/kernel/exec_domain.c | |||
@@ -27,7 +27,7 @@ static struct exec_domain *exec_domains = &default_exec_domain; | |||
27 | static DEFINE_RWLOCK(exec_domains_lock); | 27 | static DEFINE_RWLOCK(exec_domains_lock); |
28 | 28 | ||
29 | 29 | ||
30 | static u_long ident_map[32] = { | 30 | static unsigned long ident_map[32] = { |
31 | 0, 1, 2, 3, 4, 5, 6, 7, | 31 | 0, 1, 2, 3, 4, 5, 6, 7, |
32 | 8, 9, 10, 11, 12, 13, 14, 15, | 32 | 8, 9, 10, 11, 12, 13, 14, 15, |
33 | 16, 17, 18, 19, 20, 21, 22, 23, | 33 | 16, 17, 18, 19, 20, 21, 22, 23, |
@@ -56,10 +56,10 @@ default_handler(int segment, struct pt_regs *regp) | |||
56 | } | 56 | } |
57 | 57 | ||
58 | static struct exec_domain * | 58 | static struct exec_domain * |
59 | lookup_exec_domain(u_long personality) | 59 | lookup_exec_domain(unsigned int personality) |
60 | { | 60 | { |
61 | struct exec_domain * ep; | 61 | unsigned int pers = personality(personality); |
62 | u_long pers = personality(personality); | 62 | struct exec_domain *ep; |
63 | 63 | ||
64 | read_lock(&exec_domains_lock); | 64 | read_lock(&exec_domains_lock); |
65 | for (ep = exec_domains; ep; ep = ep->next) { | 65 | for (ep = exec_domains; ep; ep = ep->next) { |
@@ -70,7 +70,7 @@ lookup_exec_domain(u_long personality) | |||
70 | 70 | ||
71 | #ifdef CONFIG_MODULES | 71 | #ifdef CONFIG_MODULES |
72 | read_unlock(&exec_domains_lock); | 72 | read_unlock(&exec_domains_lock); |
73 | request_module("personality-%ld", pers); | 73 | request_module("personality-%d", pers); |
74 | read_lock(&exec_domains_lock); | 74 | read_lock(&exec_domains_lock); |
75 | 75 | ||
76 | for (ep = exec_domains; ep; ep = ep->next) { | 76 | for (ep = exec_domains; ep; ep = ep->next) { |
@@ -135,7 +135,7 @@ unregister: | |||
135 | } | 135 | } |
136 | 136 | ||
137 | int | 137 | int |
138 | __set_personality(u_long personality) | 138 | __set_personality(unsigned int personality) |
139 | { | 139 | { |
140 | struct exec_domain *ep, *oep; | 140 | struct exec_domain *ep, *oep; |
141 | 141 | ||
@@ -188,9 +188,9 @@ static int __init proc_execdomains_init(void) | |||
188 | module_init(proc_execdomains_init); | 188 | module_init(proc_execdomains_init); |
189 | #endif | 189 | #endif |
190 | 190 | ||
191 | SYSCALL_DEFINE1(personality, u_long, personality) | 191 | SYSCALL_DEFINE1(personality, unsigned int, personality) |
192 | { | 192 | { |
193 | u_long old = current->personality; | 193 | unsigned int old = current->personality; |
194 | 194 | ||
195 | if (personality != 0xffffffff) { | 195 | if (personality != 0xffffffff) { |
196 | set_personality(personality); | 196 | set_personality(personality); |
@@ -198,7 +198,7 @@ SYSCALL_DEFINE1(personality, u_long, personality) | |||
198 | return -EINVAL; | 198 | return -EINVAL; |
199 | } | 199 | } |
200 | 200 | ||
201 | return (long)old; | 201 | return old; |
202 | } | 202 | } |
203 | 203 | ||
204 | 204 | ||