ipv6: fix compiler warning in ipv6_exthdrs_len

Commit 299603e837 ("net-gro: Prepare GRO
stack for the upcoming tunneling support") used an uninitialized variable
which leads to the following compiler warning:

net/ipv6/ip6_offload.c: In function ‘ipv6_gro_complete’:
net/ipv6/ip6_offload.c:178:24: warning: ‘optlen’ may be used uninitialized in this function [-Wmaybe-uninitialized]
    opth = (void *)opth + optlen;
                        ^
net/ipv6/ip6_offload.c:164:22: note: ‘optlen’ was declared here
  int len = 0, proto, optlen;
                      ^
Fix it up.

Cc: Jerry Chu <hkchu@google.com>
Signed-off-by: Hannes Frederic Sowa <hannes@stressinduktion.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Hannes Frederic Sowa 2013-12-14 07:29:29 +01:00 committed by David S. Miller
parent df012169da
commit f52d81dc27

View file

@ -161,7 +161,7 @@ static int ipv6_exthdrs_len(struct ipv6hdr *iph,
const struct net_offload **opps)
{
struct ipv6_opt_hdr *opth = NULL;
int len = 0, proto, optlen;
int len = 0, optlen = 0, proto;
proto = iph->nexthdr;
for (;;) {
@ -172,11 +172,12 @@ static int ipv6_exthdrs_len(struct ipv6hdr *iph,
if (!((*opps)->flags & INET6_PROTO_GSO_EXTHDR))
break;
}
if (opth == NULL)
if (opth == NULL) {
opth = (void *)(iph+1);
else
} else {
optlen = ipv6_optlen(opth);
opth = (void *)opth + optlen;
optlen = ipv6_optlen(opth);
}
len += optlen;
proto = opth->nexthdr;
}