Re: Many warnings from our userspace headers

From: Sam Ravnborg
Date: Tue Dec 30 2008 - 07:06:05 EST


On Tue, Dec 30, 2008 at 11:43:22AM +0100, Andreas Schwab wrote:
> Sam Ravnborg <sam@xxxxxxxxxxxx> writes:
>
> > /home/sam/kernel/knext.git/usr/include/linux/acct.h:62: leaks CONFIG_M68K to userspace where it is not valid
>
> IMHO this is a false positive, since it is protected by __KERNEL__ in
> the same expression.

Correct - but we can rewrite it like this:

diff --git a/include/linux/acct.h b/include/linux/acct.h
index 882dc72..bcc6d2f 100644
--- a/include/linux/acct.h
+++ b/include/linux/acct.h
@@ -59,8 +59,12 @@ struct acct
comp_t ac_majflt; /* Major Pagefaults */
comp_t ac_swaps; /* Number of Swaps */
/* m68k had no padding here. */
-#if !defined(CONFIG_M68K) || !defined(__KERNEL__)
+#ifndef __KERNEL__
__u16 ac_ahz; /* AHZ */
+#else
+ #ifndef CONFIG_M68K
+ __u16 ac_ahz; /* AHZ */
+ #endif
#endif
__u32 ac_exitcode; /* Exitcode */
char ac_comm[ACCT_COMM + 1]; /* Command Name */

This is at least for me also easier to parse.
So we remove a (bogus) warning and make the code easier to read.

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