Re: dealing with excessive includes

From: Geert Uytterhoeven
Date: Mon Oct 23 2006 - 12:53:32 EST


On Mon, 23 Oct 2006, Linus Torvalds wrote:
> On Mon, 23 Oct 2006, Geert Uytterhoeven wrote:
> > > We have tons of issues that depend on config variables and architecture
> > > details.
> >
> > Indeed, so the config variables and architecture details should be handled in
> > the include files, not in the (multiple) users of those include files.
>
> The point is - _verifying_ that is actually hard.
>
> If some inline function depends on a particular header, you'll have a hard
> time checking for that if there's an #ifdef around it. Which is not
> uncommon, we have things like:
>
> #ifdef CONFIG_PROCFS
> .. number of inline functions ..
> #else
> #define function1(a,b,c) do { } while (0)
> ...
> #endif
>
> so I'm just saying that "just compile it" is _not_ a way of verifying that
> the header file is complete - because it may well be complete for the
> particular config you're testing, but not for some other.
>
> So this is a hard problem. If it was easy, we'd not _have_ the problem in
> the first place.

I agree _verifying_ this for all config and arch combinations is hard.
But my point is that right now we're `solving' this at the user (of the
include) level, which is an order of magnitude more work.
If the includes were (sufficiently) self-contained, the driver writers would
have to care less about config/arch dependencies.

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
-
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/