|
@@ -629,7 +629,7 @@ void __efx_rx_packet(struct efx_channel *channel)
|
|
|
if (unlikely(!(efx->net_dev->features & NETIF_F_RXCSUM)))
|
|
|
rx_buf->flags &= ~EFX_RX_PKT_CSUMMED;
|
|
|
|
|
|
- if (!channel->type->receive_skb)
|
|
|
+ if ((rx_buf->flags & EFX_RX_PKT_TCP) && !channel->type->receive_skb)
|
|
|
efx_rx_packet_gro(channel, rx_buf, channel->rx_pkt_n_frags, eh);
|
|
|
else
|
|
|
efx_rx_deliver(channel, eh, rx_buf, channel->rx_pkt_n_frags);
|