aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorEric W. Biederman <ebiederm@xmission.com>2007-07-16 02:41:15 -0400
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-07-16 12:05:48 -0400
commit213dd266d48af90c1eec8688c1ff31aa34d21de2 (patch)
tree2882f6e84d36421ebe2a6360cfe0c773bd9053bd /include
parente3a68e30d28dbc6981dfc3d6ceddbfa2f885fe4e (diff)
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 'include')
-rw-r--r--include/linux/mnt_namespace.h2
-rw-r--r--include/linux/nsproxy.h2
-rw-r--r--include/linux/pid_namespace.h2
-rw-r--r--include/linux/utsname.h3
4 files changed, 5 insertions, 4 deletions
diff --git a/include/linux/mnt_namespace.h b/include/linux/mnt_namespace.h
index 1fa4d9813b31..8eed44f8ca73 100644
--- a/include/linux/mnt_namespace.h
+++ b/include/linux/mnt_namespace.h
@@ -14,7 +14,7 @@ struct mnt_namespace {
14 int event; 14 int event;
15}; 15};
16 16
17extern struct mnt_namespace *copy_mnt_ns(int, struct mnt_namespace *, 17extern struct mnt_namespace *copy_mnt_ns(unsigned long, struct mnt_namespace *,
18 struct fs_struct *); 18 struct fs_struct *);
19extern void __put_mnt_ns(struct mnt_namespace *ns); 19extern void __put_mnt_ns(struct mnt_namespace *ns);
20 20
diff --git a/include/linux/nsproxy.h b/include/linux/nsproxy.h
index 6d179a397bfb..ce06188b7a56 100644
--- a/include/linux/nsproxy.h
+++ b/include/linux/nsproxy.h
@@ -32,7 +32,7 @@ struct nsproxy {
32}; 32};
33extern struct nsproxy init_nsproxy; 33extern struct nsproxy init_nsproxy;
34 34
35int copy_namespaces(int flags, struct task_struct *tsk); 35int copy_namespaces(unsigned long flags, struct task_struct *tsk);
36void get_task_namespaces(struct task_struct *tsk); 36void get_task_namespaces(struct task_struct *tsk);
37void free_nsproxy(struct nsproxy *ns); 37void free_nsproxy(struct nsproxy *ns);
38int unshare_nsproxy_namespaces(unsigned long, struct nsproxy **, 38int unshare_nsproxy_namespaces(unsigned long, struct nsproxy **,
diff --git a/include/linux/pid_namespace.h b/include/linux/pid_namespace.h
index 169c6c24209b..b9a17e08ff0f 100644
--- a/include/linux/pid_namespace.h
+++ b/include/linux/pid_namespace.h
@@ -29,7 +29,7 @@ static inline void get_pid_ns(struct pid_namespace *ns)
29 kref_get(&ns->kref); 29 kref_get(&ns->kref);
30} 30}
31 31
32extern struct pid_namespace *copy_pid_ns(int flags, struct pid_namespace *ns); 32extern struct pid_namespace *copy_pid_ns(unsigned long flags, struct pid_namespace *ns);
33extern void free_pid_ns(struct kref *kref); 33extern void free_pid_ns(struct kref *kref);
34 34
35static inline void put_pid_ns(struct pid_namespace *ns) 35static inline void put_pid_ns(struct pid_namespace *ns)
diff --git a/include/linux/utsname.h b/include/linux/utsname.h
index 51ad167611e4..923db99175f2 100644
--- a/include/linux/utsname.h
+++ b/include/linux/utsname.h
@@ -48,7 +48,8 @@ static inline void get_uts_ns(struct uts_namespace *ns)
48 kref_get(&ns->kref); 48 kref_get(&ns->kref);
49} 49}
50 50
51extern struct uts_namespace *copy_utsname(int flags, struct uts_namespace *ns); 51extern struct uts_namespace *copy_utsname(unsigned long flags,
52 struct uts_namespace *ns);
52extern void free_uts_ns(struct kref *kref); 53extern void free_uts_ns(struct kref *kref);
53 54
54static inline void put_uts_ns(struct uts_namespace *ns) 55static inline void put_uts_ns(struct uts_namespace *ns)