Skip to content

Commit

Permalink
gro: Normalise skb before bypassing GRO on netpoll VLAN path
Browse files Browse the repository at this point in the history
Hi:

gro: Normalise skb before bypassing GRO on netpoll VLAN path

When we detect netpoll RX on the GRO VLAN path we bail out and
call the normal VLAN receive handler.  However, the packet needs
to be normalised by calling eth_type_trans since that's what the
normal path expects (normally the GRO path does the fixup).

This patch adds the necessary call to vlan_gro_frags.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>

Thanks,
Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
Herbert Xu authored and David S. Miller committed Apr 13, 2009
1 parent 03a980d commit 1db9e29
Showing 1 changed file with 3 additions and 1 deletion.
4 changes: 3 additions & 1 deletion net/8021q/vlan_core.c
Original file line number Diff line number Diff line change
Expand Up @@ -121,8 +121,10 @@ int vlan_gro_frags(struct napi_struct *napi, struct vlan_group *grp,
if (!skb)
return NET_RX_DROP;

if (netpoll_rx_on(skb))
if (netpoll_rx_on(skb)) {
skb->protocol = eth_type_trans(skb, skb->dev);
return vlan_hwaccel_receive_skb(skb, grp, vlan_tci);
}

return napi_frags_finish(napi, skb,
vlan_gro_common(napi, grp, vlan_tci, skb));
Expand Down

0 comments on commit 1db9e29

Please sign in to comment.