igb: only use vlan_gro_receive if vlans are registered
This change makes it so that vlan_gro_receive is only used if vlans have been registered to the adapter structure. Previously we were just sending all vlan tagged frames in via this function but this results in a null pointer dereference when vlans are not registered. [ This fixes bugzilla entry 15582 -Eric Dumazet] Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Acked-by: Eric Dumazet <eric.dumazet@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
d07f3e375f
commit
31b24b955c
1 changed files with 1 additions and 1 deletions
|
@ -5102,7 +5102,7 @@ static void igb_receive_skb(struct igb_q_vector *q_vector,
|
|||
{
|
||||
struct igb_adapter *adapter = q_vector->adapter;
|
||||
|
||||
if (vlan_tag)
|
||||
if (vlan_tag && adapter->vlgrp)
|
||||
vlan_gro_receive(&q_vector->napi, adapter->vlgrp,
|
||||
vlan_tag, skb);
|
||||
else
|
||||
|
|
Reference in a new issue