diff options
Diffstat (limited to 'drivers/net/sfc/rx.c')
| -rw-r--r-- | drivers/net/sfc/rx.c | 4 | 
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/net/sfc/rx.c b/drivers/net/sfc/rx.c index c0fdb59030f..62e43649466 100644 --- a/drivers/net/sfc/rx.c +++ b/drivers/net/sfc/rx.c @@ -14,6 +14,7 @@  #include <linux/ip.h>  #include <linux/tcp.h>  #include <linux/udp.h> +#include <linux/prefetch.h>  #include <net/ip.h>  #include <net/checksum.h>  #include "net_driver.h" @@ -605,6 +606,9 @@ void __efx_rx_packet(struct efx_channel *channel,  		skb_record_rx_queue(skb, channel->channel);  	} +	if (unlikely(!(efx->net_dev->features & NETIF_F_RXCSUM))) +		checksummed = false; +  	if (likely(checksummed || rx_buf->is_page)) {  		efx_rx_packet_gro(channel, rx_buf, eh, checksummed);  		return;  |