diff options
author | Eric W. Biederman <ebiederm@xmission.com> | 2007-07-15 23:41:15 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-07-16 09:05:48 -0700 |
commit | 213dd266d48af90c1eec8688c1ff31aa34d21de2 (patch) | |
tree | 2882f6e84d36421ebe2a6360cfe0c773bd9053bd /kernel | |
parent | e3a68e30d28dbc6981dfc3d6ceddbfa2f885fe4e (diff) | |
download | kernel_samsung_smdk4412-213dd266d48af90c1eec8688c1ff31aa34d21de2.zip kernel_samsung_smdk4412-213dd266d48af90c1eec8688c1ff31aa34d21de2.tar.gz kernel_samsung_smdk4412-213dd266d48af90c1eec8688c1ff31aa34d21de2.tar.bz2 |
namespace: ensure clone_flags are always stored in an unsigned long
While working on unshare support for the network namespace I noticed we
were putting clone flags in an int. Which is weird because the syscall
uses unsigned long and we at least need an unsigned to properly hold all of
the unshare flags.
So to make the code consistent, this patch updates the code to use
unsigned long instead of int for the clone flags in those places
where we get it wrong today.
Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Acked-by: Cedric Le Goater <clg@fr.ibm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'kernel')
-rw-r--r-- | kernel/nsproxy.c | 6 | ||||
-rw-r--r-- | kernel/pid.c | 2 | ||||
-rw-r--r-- | kernel/utsname.c | 2 |
3 files changed, 5 insertions, 5 deletions
diff --git a/kernel/nsproxy.c b/kernel/nsproxy.c index 4b7fcc8..10f0bbb 100644 --- a/kernel/nsproxy.c +++ b/kernel/nsproxy.c @@ -58,8 +58,8 @@ static inline struct nsproxy *clone_nsproxy(struct nsproxy *orig) * Return the newly created nsproxy. Do not attach this to the task, * leave it to the caller to do proper locking and attach it to task. */ -static struct nsproxy *create_new_namespaces(int flags, struct task_struct *tsk, - struct fs_struct *new_fs) +static struct nsproxy *create_new_namespaces(unsigned long flags, + struct task_struct *tsk, struct fs_struct *new_fs) { struct nsproxy *new_nsp; int err; @@ -121,7 +121,7 @@ out_ns: * called from clone. This now handles copy for nsproxy and all * namespaces therein. */ -int copy_namespaces(int flags, struct task_struct *tsk) +int copy_namespaces(unsigned long flags, struct task_struct *tsk) { struct nsproxy *old_ns = tsk->nsproxy; struct nsproxy *new_ns; diff --git a/kernel/pid.c b/kernel/pid.c index eb66bd2..c6e3f9f 100644 --- a/kernel/pid.c +++ b/kernel/pid.c @@ -365,7 +365,7 @@ struct pid *find_ge_pid(int nr) } EXPORT_SYMBOL_GPL(find_get_pid); -struct pid_namespace *copy_pid_ns(int flags, struct pid_namespace *old_ns) +struct pid_namespace *copy_pid_ns(unsigned long flags, struct pid_namespace *old_ns) { BUG_ON(!old_ns); get_pid_ns(old_ns); diff --git a/kernel/utsname.c b/kernel/utsname.c index 3ae4393..9d8180a 100644 --- a/kernel/utsname.c +++ b/kernel/utsname.c @@ -39,7 +39,7 @@ static struct uts_namespace *clone_uts_ns(struct uts_namespace *old_ns) * utsname of this process won't be seen by parent, and vice * versa. */ -struct uts_namespace *copy_utsname(int flags, struct uts_namespace *old_ns) +struct uts_namespace *copy_utsname(unsigned long flags, struct uts_namespace *old_ns) { struct uts_namespace *new_ns; |