posix_types.h: Cleanup stale __NFDBITS and related definitions
authorJosh Boyer <jwboyer@redhat.com>
Wed, 25 Jul 2012 14:40:34 +0000 (10:40 -0400)
committerLinus Torvalds <torvalds@linux-foundation.org>
Thu, 26 Jul 2012 20:36:43 +0000 (13:36 -0700)
commit8ded2bbc1845e19c771eb55209aab166ef011243
tree9ab400cdd407a9426fdfcc3432d7c0e19a0607ed
parent4cb38750d49010ae72e718d46605ac9ba5a851b4
posix_types.h: Cleanup stale __NFDBITS and related definitions

Recently, glibc made a change to suppress sign-conversion warnings in
FD_SET (glibc commit ceb9e56b3d1).  This uncovered an issue with the
kernel's definition of __NFDBITS if applications #include
<linux/types.h> after including <sys/select.h>.  A build failure would
be seen when passing the -Werror=sign-compare and -D_FORTIFY_SOURCE=2
flags to gcc.

It was suggested that the kernel should either match the glibc
definition of __NFDBITS or remove that entirely.  The current in-kernel
uses of __NFDBITS can be replaced with BITS_PER_LONG, and there are no
uses of the related __FDELT and __FDMASK defines.  Given that, we'll
continue the cleanup that was started with commit 8b3d1cda4f5f
("posix_types: Remove fd_set macros") and drop the remaining unused
macros.

Additionally, linux/time.h has similar macros defined that expand to
nothing so we'll remove those at the same time.

Reported-by: Jeff Law <law@redhat.com>
Suggested-by: Linus Torvalds <torvalds@linux-foundation.org>
CC: <stable@vger.kernel.org>
Signed-off-by: Josh Boyer <jwboyer@redhat.com>
[ .. and fix up whitespace as per akpm ]
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
arch/mips/kernel/kspd.c
fs/exec.c
fs/select.c
include/linux/posix_types.h
include/linux/time.h
kernel/exit.c
security/selinux/hooks.c