enic: Don't indicate IPv6 pkts using soft-LRO

LRO is only applied to IPv4 pkts, so don't use the LRO indication functions
for anything other IPv4 pkts.  Every non-IPv4 pkt is indicated using non-
LRO functions.

Signed-off-by: Scott Feldman <scofeldm@cisco.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
This commit is contained in:
Scott Feldman 2008-09-24 11:23:22 -07:00 committed by Jeff Garzik
parent 3b060be058
commit d9c3c57ffc

View file

@ -941,7 +941,7 @@ static void enic_rq_indicate_buf(struct vnic_rq *rq,
if (enic->vlan_group && vlan_stripped) { if (enic->vlan_group && vlan_stripped) {
if (ENIC_SETTING(enic, LRO)) if (ENIC_SETTING(enic, LRO) && ipv4)
lro_vlan_hwaccel_receive_skb(&enic->lro_mgr, lro_vlan_hwaccel_receive_skb(&enic->lro_mgr,
skb, enic->vlan_group, skb, enic->vlan_group,
vlan, cq_desc); vlan, cq_desc);
@ -951,7 +951,7 @@ static void enic_rq_indicate_buf(struct vnic_rq *rq,
} else { } else {
if (ENIC_SETTING(enic, LRO)) if (ENIC_SETTING(enic, LRO) && ipv4)
lro_receive_skb(&enic->lro_mgr, skb, cq_desc); lro_receive_skb(&enic->lro_mgr, skb, cq_desc);
else else
netif_receive_skb(skb); netif_receive_skb(skb);