[PATCH] net: Initialize all members in skb_gro_remcsum_init()

From: Geert Uytterhoeven
Date: Wed Feb 18 2015 - 05:38:17 EST

skb_gro_remcsum_init() initializes the gro_remcsum.delta member only,
leading to compiler warnings about a possibly uninitialized
gro_remcsum.offset member:

drivers/net/vxlan.c: In function âvxlan_gro_receiveâ:
drivers/net/vxlan.c:602: warning: âgrc.offsetâ may be used uninitialized in this function
net/ipv4/fou.c: In function âgue_gro_receiveâ:
net/ipv4/fou.c:262: warning: âgrc.offsetâ may be used uninitialized in this function

While these are harmless for now:
- skb_gro_remcsum_process() sets offset before changing delta,
- skb_gro_remcsum_cleanup() checks if delta is non-zero before
accessing offset,
it's safer to let the initialization function initialize all members.

Signed-off-by: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
include/linux/netdevice.h | 1 +
1 file changed, 1 insertion(+)

diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h
index 5897b4ea5a3f9e0f..429d1790a27e85f3 100644
--- a/include/linux/netdevice.h
+++ b/include/linux/netdevice.h
@@ -2342,6 +2342,7 @@ struct gro_remcsum {

static inline void skb_gro_remcsum_init(struct gro_remcsum *grc)
+ grc->offset = 0;
grc->delta = 0;


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/