Re: [RFC][PATCH] bitfields API

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: Vegard Nossum <vegard.nossum@...>
Cc: Alexey Dobriyan <adobriyan@...>, David Miller <davem@...>, Ingo Molnar <mingo@...>, Andrew Morton <akpm@...>, <linux-kernel@...>
Date: Thursday, August 28, 2008 - 3:02 pm

On Thu, 28 Aug 2008, Vegard Nossum wrote:

Why not do something like this (as suggested by Ingo, I think)? Yeah, the
macro should go into kmemcheck.h but I don't have a tree handy...

Pekka

Index: linux-2.6/include/linux/bitfield.h
===================================================================
--- /dev/null
+++ linux-2.6/include/linux/bitfield.h
@@ -0,0 +1,10 @@
+#ifndef __LINUX_BITFIELD_H
+#define __LINUX_BITFIELD_H
+
+#ifdef CONFIG_KMEMCHECK
+#define KMEMCHECK_BIT_FIELD(field) do { field = 0; } while (0)
+#else
+#define KMEMCHECK_BIT_FIELD(field) do { } while (0)
+#endif /* CONFIG_KMEMCHECK */
+
+#endif /* __LINUX_BITFIELD_H */

Index: linux-2.6/net/core/skbuff.c
===================================================================
--- linux-2.6.orig/net/core/skbuff.c
+++ linux-2.6/net/core/skbuff.c
@@ -55,6 +55,7 @@
#include
#include
#include
+#include

#include
#include
@@ -209,6 +210,11 @@ struct sk_buff *__alloc_skb(unsigned int
skb->data = data;
skb_reset_tail_pointer(skb);
skb->end = skb->tail + size;
+ KMEMCHECK_BIT_FIELD(skb->local_df);
+ KMEMCHECK_BIT_FIELD(skb->cloned);
+ KMEMCHECK_BIT_FIELD(skb->ip_summed);
+ KMEMCHECK_BIT_FIELD(skb->nohdr);
+ KMEMCHECK_BIT_FIELD(skb->nfctinfo);
/* make sure we initialize shinfo sequentially */
shinfo = skb_shinfo(skb);
atomic_set(&shinfo->dataref, 1);
--

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[RFC][PATCH] bitfields API, Vegard Nossum, (Thu Aug 28, 2:32 pm)
Re: [RFC][PATCH] bitfields API, Alexey Dobriyan, (Thu Aug 28, 2:40 pm)
Re: [RFC][PATCH] bitfields API, Vegard Nossum, (Thu Aug 28, 2:46 pm)
Re: [RFC][PATCH] bitfields API, Alexey Dobriyan, (Thu Aug 28, 3:05 pm)
Re: [RFC][PATCH] bitfields API, Vegard Nossum, (Thu Aug 28, 3:18 pm)
Re: [RFC][PATCH] bitfields API, Pekka Enberg, (Thu Aug 28, 3:07 pm)
Re: [RFC][PATCH] bitfields API, Pekka J Enberg, (Thu Aug 28, 3:02 pm)
Re: [RFC][PATCH] bitfields API, Vegard Nossum, (Thu Aug 28, 3:38 pm)
Re: [RFC][PATCH] bitfields API, Vegard Nossum, (Sat Aug 30, 4:28 am)
Re: [RFC][PATCH] bitfields API, Pekka Enberg, (Thu Aug 28, 2:40 pm)
Re: [RFC][PATCH] bitfields API, Adrian Bunk, (Thu Aug 28, 4:27 pm)
Re: [RFC][PATCH] bitfields API, Vegard Nossum, (Thu Aug 28, 4:59 pm)
Re: [RFC][PATCH] bitfields API, Pekka Enberg, (Thu Aug 28, 4:54 pm)