diff options
author | Hannes Frederic Sowa <hannes@stressinduktion.org> | 2013-12-14 07:29:29 +0100 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2013-12-14 02:01:27 -0500 |
commit | f52d81dc27c3456c702e83183035142c222acdc7 (patch) | |
tree | 6b68f1c6b09264ed4378de02749839046a4f6f4f /net/ipv6/ip6_offload.c | |
parent | df012169da29f77989b3dec9a7c4dd1f7bb9785f (diff) | |
download | linux-f52d81dc27c3456c702e83183035142c222acdc7.tar.gz linux-f52d81dc27c3456c702e83183035142c222acdc7.tar.bz2 linux-f52d81dc27c3456c702e83183035142c222acdc7.zip |
ipv6: fix compiler warning in ipv6_exthdrs_len
Commit 299603e8370a93dd5d8e8d800f0dff1ce2c53d36 ("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>
Diffstat (limited to 'net/ipv6/ip6_offload.c')
-rw-r--r-- | net/ipv6/ip6_offload.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/net/ipv6/ip6_offload.c b/net/ipv6/ip6_offload.c index 7540a0ed75ae..08861f1ff883 100644 --- a/net/ipv6/ip6_offload.c +++ b/net/ipv6/ip6_offload.c @@ -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; } |