Subject: Re: [PATCH -next] netdev: inet_timewait_sock.h missing semi-colon when KMEMCHECK is enabled

From: Joe Perches <[email-masked]>
Date: Mon, 14 Oct 2013 12:53:57 -0700

On Mon, 2013-10-14 at 12:36 -0700, Randy Dunlap wrote:
> From: Randy Dunlap <[email-masked]>
> 
> Fix (a few hundred) build errors due to missing semi-colon when
> KMEMCHECK is enabled:
> 
>   include/net/inet_timewait_sock.h:139:2: error: expected ',', ';' or '}' before 'int'
>   include/net/inet_timewait_sock.h:148:28: error: 'const struct inet_timewait_sock' has no member named 'tw_death_node'
> 
> Signed-off-by: Randy Dunlap <[email-masked]>
> ---
>  include/net/inet_timewait_sock.h |    2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> --- next-2013-1014.orig/include/net/inet_timewait_sock.h
> +++ next-2013-1014/include/net/inet_timewait_sock.h
> @@ -135,7 +135,7 @@ struct inet_timewait_sock {
>  				tw_transparent  : 1,
>  				tw_pad		: 6,	/* 6 bits hole */
>  				tw_tos		: 8,
> -				tw_pad2		: 16 /* 16 bits hole */
> +				tw_pad2		: 16;	/* 16 bits hole */
>  	kmemcheck_bitfield_end(flags);
>  	u32			tw_ttd;
>  	struct inet_bind_bucket	*tw_tb;
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to [email-masked]
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/

Shouldn't this be done in kmemcheck.h?

 include/linux/kmemcheck.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/include/linux/kmemcheck.h b/include/linux/kmemcheck.h
index 39f8453..b9ffad5 100644
--- a/include/linux/kmemcheck.h
+++ b/include/linux/kmemcheck.h
@@ -62,10 +62,10 @@ bool kmemcheck_is_obj_initialized(unsigned long addr, size_t size);
  *     kmemcheck_annotate_bitfield(a, flags);
  */
 #define kmemcheck_bitfield_begin(name)	\
-	int name##_begin[0];
+	int name##_begin[0]
 
 #define kmemcheck_bitfield_end(name)	\
-	int name##_end[0];
+	int name##_end[0]
 
 #define kmemcheck_annotate_bitfield(ptr, name)				\
 	do {								\