X-Git-Url: http://pilppa.org/gitweb/gitweb.cgi?a=blobdiff_plain;f=include%2Flinux%2Futsname.h;h=11232676bfff59af017b4b3343c67dc430004c4b;hb=c644f0e4b56f9a2fc066cd0d75a18074d130e4a3;hp=f8d3b326e93a2f9b8a2f5bc616877a433acfa73a;hpb=02a93208edec0d655c9f18613d830dc6afeda7d4;p=linux-2.6-omap-h63xx.git diff --git a/include/linux/utsname.h b/include/linux/utsname.h index f8d3b326e93..11232676bff 100644 --- a/include/linux/utsname.h +++ b/include/linux/utsname.h @@ -35,6 +35,7 @@ struct new_utsname { #include #include #include +#include #include struct uts_namespace { @@ -43,13 +44,14 @@ struct uts_namespace { }; extern struct uts_namespace init_uts_ns; +#ifdef CONFIG_UTS_NS static inline void get_uts_ns(struct uts_namespace *ns) { kref_get(&ns->kref); } -#ifdef CONFIG_UTS_NS -extern struct uts_namespace *copy_utsname(int flags, struct uts_namespace *ns); +extern struct uts_namespace *copy_utsname(unsigned long flags, + struct uts_namespace *ns); extern void free_uts_ns(struct kref *kref); static inline void put_uts_ns(struct uts_namespace *ns) @@ -57,15 +59,22 @@ static inline void put_uts_ns(struct uts_namespace *ns) kref_put(&ns->kref, free_uts_ns); } #else -static inline struct uts_namespace *copy_utsname(int flags, - struct uts_namespace *ns) +static inline void get_uts_ns(struct uts_namespace *ns) { - return ns; } static inline void put_uts_ns(struct uts_namespace *ns) { } + +static inline struct uts_namespace *copy_utsname(unsigned long flags, + struct uts_namespace *ns) +{ + if (flags & CLONE_NEWUTS) + return ERR_PTR(-EINVAL); + + return ns; +} #endif static inline struct new_utsname *utsname(void)