MIPS: VPE: Remove vpe_getuid and vpe_getgid
authorEric W. Biederman <ebiederm@xmission.com>
Tue, 21 Jan 2014 18:28:15 +0000 (10:28 -0800)
committerEric W. Biederman <ebiederm@xmission.com>
Wed, 22 Jan 2014 23:20:46 +0000 (15:20 -0800)
commitf58437f1f9161847c636e4fed5569ed5b908af36
tree2bdfb9892f961534dd52b1ecf88632166d321290
parent261000a56b6382f597bcb12000f55c9ff26a1efb
MIPS: VPE: Remove vpe_getuid and vpe_getgid

The linux build-bot recently reported a build error in arch/mips/kernel/vpe.c

     tree:   git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace.git for-linus
     head:   261000a56b6382f597bcb12000f55c9ff26a1efb
     commit: 261000a56b6382f597bcb12000f55c9ff26a1efb [4/4] userns:  userns: Remove UIDGID_STRICT_TYPE_CHECKS
     config: make ARCH=mips maltaaprp_defconfig

     All error/warnings:

        arch/mips/kernel/vpe.c: In function 'vpe_open':
     >> arch/mips/kernel/vpe.c:1086:9: error: incompatible types when assigning to type 'unsigned int' from type 'kuid_t'
     >> arch/mips/kernel/vpe.c:1087:9: error: incompatible types when assigning to type 'unsigned int' from type 'kgid_t'

     vim +1086 arch/mips/kernel/vpe.c

     863abad4 Jesper Juhl   2010-10-30  1080 return -ENOMEM;
     863abad4 Jesper Juhl   2010-10-30  1081   }
     e01402b1 Ralf Baechle  2005-07-14  1082   v->plen = P_SIZE;
     e01402b1 Ralf Baechle  2005-07-14  1083   v->load_addr = NULL;
     e01402b1 Ralf Baechle  2005-07-14  1084   v->len = 0;
     e01402b1 Ralf Baechle  2005-07-14  1085
     d76b0d9b David Howells 2008-11-14 @1086 v->uid = filp->f_cred->fsuid;
     d76b0d9b David Howells 2008-11-14 @1087   v->gid = filp->f_cred->fsgid;
     2600990e Ralf Baechle  2006-04-05  1088
     2600990e Ralf Baechle  2006-04-05  1089 v->cwd[0] = 0;
     2600990e Ralf Baechle  2006-04-05  1090    ret = getcwd(v->cwd, VPE_PATH_MAX);

When examining the code to see what v->uid and v->gid were used for I
discovered that the only users in the kernel are vpe_getuid and
vpe_getgid, and that vpe_getuid and vpe_getgid are never called.

So instead of proposing a conversion to use kuid_t and kgid_t instead
of unsigned int/int as I normally would let's just kill this dead code
so no one has to worry about it further.

Deng-Cheng Zhu said:

This is a good catch. vpe_get[u|g]id was originally used by KSPD which
has been removed.

Cc: Ralf Baechle <ralf@linux-mips.org>
Cc: linux-mips@linux-mips.org
Reviewed-by: Deng-Cheng Zhu <dengcheng.zhu@imgtec.com>
Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
arch/mips/include/asm/vpe.h
arch/mips/kernel/vpe.c