Re: [PATCH] posix_types.h: make __NFDBITS match glibc definition

From: Linus Torvalds
Date: Tue Jul 24 2012 - 15:37:56 EST


On Tue, Jul 24, 2012 at 12:19 PM, Jeff Law <law@xxxxxxxxxx> wrote:
>
> All that's strictly necessary is that cast to (int). That avoids the
> problem.

.. and it causes other problems instead, namely the crap code generation for __.

Apparently glibc fixed it totally differently, and the kernel actually
doesn't care at all. We'd probably be best off just removing those
#defines entirely. Especially since the kernel doesn't even *use*
those things.

The kernel _does_ have these odd #define's in <linux/time.h>:

#define NFDBITS __NFDBITS

#define FD_SETSIZE __FD_SETSIZE
#define FD_SET(fd,fdsetp) __FD_SET(fd,fdsetp)
#define FD_CLR(fd,fdsetp) __FD_CLR(fd,fdsetp)
#define FD_ISSET(fd,fdsetp) __FD_ISSET(fd,fdsetp)
#define FD_ZERO(fdsetp) __FD_ZERO(fdsetp)

but apart from __NFDBITS and __FD_SETSIZE, the kernel doesn't even
seem to define those __FD_xyx macros at all (although possibly they
are hiding in some odd auto-generated headers, I didn't check). I
think this is all silly left-overs that nobody really wants any more.
glibc clearly doesn't.

Linus
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/