userns: Remove UIDGID_STRICT_TYPE_CHECKS
PATCH 1/1 userns: Remove UIDGID_STRICT_TYPE_CHECKS
Removing UIDGID_STRICT_TYPE_CHECKS simplifies the code and always generates a compile error if the uids and kuids or gids and kgids are mixed by accident. Now that the appropriate conversions have been placed throughout the kernel there is no longer a need for a mode where we don't detect them as compile errors.
Acked-by Serge Hallyn <[email protected]>
--- include/linux/posix_acl.h | 3 --- include/linux/projid.h | 15 --------------- include/linux/uidgid.h | 22 ---------------------- init/Kconfig | 11 ----------- 4 files changed, 0 insertions(+), 51 deletions(-)
include/linux/posix_acl.h +0 -3
@@ -39,9 +39,6 @@ struct posix_acl_entry {union {kuid_t e_uid;kgid_t e_gid; -#ifndef CONFIG_UIDGID_STRICT_TYPE_CHECKS -unsigned int e_id; -#endif }; };
include/linux/projid.h +0 -15
@@ -18,8 +18,6 @@ extern struct user_namespace init_user_ns;typedef __kernel_uid32_t projid_t ; -#ifdef CONFIG_UIDGID_STRICT_TYPE_CHECKS -typedef struct {projid_t val; }kprojid_t ;
@@ -31,19 +29,6 @@ static inline projid_t __kprojid_val(kprojid_t projid)#define KPROJIDT_INIT (value) (kprojid_t){ value } -#else - -typedef projid_t kprojid_t ; - -static inline projid_t __kprojid_val (kprojid_t projid) -{ -return projid; -} - -#define KPROJIDT_INIT (value) ((kprojid_t) value ) - -#endif -#define INVALID_PROJID KPROJIDT_INIT(-1)#define OVERFLOW_PROJID 65534
include/linux/uidgid.h +0 -22
@@ -17,8 +17,6 @@struct user_namespace ;extern struct user_namespace init_user_ns; -#ifdef CONFIG_UIDGID_STRICT_TYPE_CHECKS -typedef struct {uid_t val; }kuid_t ;
@@ -41,26 +39,6 @@ static inline gid_t __kgid_val(kgid_t gid)return gid.val; } -#else - -typedef uid_t kuid_t ; -typedef gid_t kgid_t ; - -static inline uid_t __kuid_val (kuid_t uid) -{ -return uid; -} - -static inline gid_t __kgid_val (kgid_t gid) -{ -return gid; -} - -#define KUIDT_INIT (value) ((kuid_t) value ) -#define KGIDT_INIT (value) ((kgid_t) value ) - -#endif -#define GLOBAL_ROOT_UID KUIDT_INIT(0)#define GLOBAL_ROOT_GID KGIDT_INIT(0)
init/Kconfig +0 -11
@@ -1123,8 +1123,6 @@ config IPC_NS config USER_NS bool "User namespace" - select UIDGID_STRICT_TYPE_CHECKS - default n help This allows containers, i.e. vservers, to use user namespaces
@@ -1156,15 +1154,6 @@ config NET_NS endif # NAMESPACES -config UIDGID_STRICT_TYPE_CHECKS - bool "Require conversions between uid/gids and their internal representation" - default n - help - While the nececessary conversions are being added to all subsystems this option allows - the code to continue to build for unconverted subsystems. - - Say Y here if you want the strict type checking enabled - config SCHED_AUTOGROUP bool "Automatic process group scheduling" select EVENTFD
Signature · 1 line
1.7.5.4