diff options
author | Yan, Zheng <zheng.z.yan@intel.com> | 2011-10-08 22:34:35 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2011-10-10 14:26:16 -0400 |
commit | cdaf557034bb4397b2c86bb424de1788b134f610 (patch) | |
tree | bf6bbf731188f17d83e5ca7018224c1c0e2ee96c | |
parent | 134d0f974c55c942541f1663d51fa846257eff2a (diff) | |
download | op-kernel-dev-cdaf557034bb4397b2c86bb424de1788b134f610.zip op-kernel-dev-cdaf557034bb4397b2c86bb424de1788b134f610.tar.gz |
gro: refetch inet6_protos[] after pulling ext headers
ipv6_gro_receive() doesn't update the protocol ops after pulling
the ext headers. It looks like a typo.
Signed-off-by: Zheng Yan <zheng.z.yan@intel.com>
Acked-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | net/ipv6/af_inet6.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/net/ipv6/af_inet6.c b/net/ipv6/af_inet6.c index 3b5669a..d27c797 100644 --- a/net/ipv6/af_inet6.c +++ b/net/ipv6/af_inet6.c @@ -875,6 +875,7 @@ static struct sk_buff **ipv6_gro_receive(struct sk_buff **head, skb_reset_transport_header(skb); __skb_push(skb, skb_gro_offset(skb)); + ops = rcu_dereference(inet6_protos[proto]); if (!ops || !ops->gro_receive) goto out_unlock; |