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

From: Josh Boyer
Date: Tue Jul 24 2012 - 15:41:24 EST


On Tue, Jul 24, 2012 at 12:37:36PM -0700, Linus Torvalds wrote:
> 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.

I'd be happy to come up with a patch that drops them, but since they're
in a user visible header file I was concerned somebody might be using
them explicitly from posix_types.h. People do weird crap like not use
glibc all the time.

josh
--
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/