Re: [PATCH] GPIO: #include <linux/kernel.h> for might_sleep

From: Uwe Kleine-König
Date: Tue Apr 15 2008 - 03:37:47 EST


Hello David,

David Brownell wrote:
> On Friday 11 April 2008, Uwe Kleine-KÃnig wrote:
> > I like having headers being independend of the order of inclusion.
>
> That's a pretty unusual policy. Not one that's generally
> followed in the kernel, either ...
It's usual for the system headers. IIRC I read that in the SUSV3 spec,
but I cannot find it at the moment.

> > Usually I order all includes alphabetically (and grouped by linux/,
> > asm/, etc.).
>
> If you like alphabetical, why the exception for <asm/...> ??
> :)
>
> > This doesn't work with gpio.h because then kernel.h is
> > included to late.
>
> So include <linux/kernel.h> first. There *is* a policy
> of avoiding extra #includes ... extras slow down builds.
Is it really a slow down if you need <linux/kernel.h> unconditionally?
I thought it's fine to skip #include <header2.h> in header1.h if not all
users of header1.h need header2.h.

If I try to compile a C file that only consists of an include for
<asm-generic/gpio.h> I get the error:

In file included from ...:
include/asm-generic/gpio.h:63: error: expected specifier-qualifier-list before âu16â
include/asm-generic/gpio.h:72: error: expected â=â, â,â, â;â, âasmâ or â__attribute__â before âgpiochip_removeâ

Best regards
Uwe

--
Uwe Kleine-KÃnig, Software Engineer
Digi International GmbH Branch Breisach, KÃferstrasse 8, 79206 Breisach, Germany
Tax: 315/5781/0242 / VAT: DE153662976 / Reg. Amtsgericht Dortmund HRB 13962
--
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/