"hw csum failure" and "netdev_rx_csum_fault" with IFB network device
Issue
hw csum failureandnetdev_rx_csum_faultwith IFB device
kernel: bond0: hw csum failure
kernel: Call Trace:
kernel: <IRQ> [<ffffffffb010d768>] dump_stack+0x19/0x1b
kernel: [<ffffffffaffe7c9a>] netdev_rx_csum_fault+0x3a/0x40
kernel: [<ffffffffaffdd98d>] __skb_checksum_complete+0xbd/0xd0
kernel: [<ffffffffb0057f08>] tcp_v4_rcv+0x128/0x990
kernel: [<ffffffffaffd4397>] ? kfree_skbmem+0x37/0x90
kernel: [<ffffffffaffd65a4>] ? consume_skb+0x34/0x90
kernel: [<ffffffffaffebb7c>] ? __netif_receive_skb_core+0x8ac/0xa20
kernel: [<ffffffffb0031699>] ip_local_deliver_finish+0xb9/0x200
kernel: [<ffffffffb0031989>] ip_local_deliver+0x59/0xd0
kernel: [<ffffffffb0057d92>] ? tcp_v4_early_demux+0x112/0x160
kernel: [<ffffffffb0031300>] ip_rcv_finish+0x90/0x370
kernel: [<ffffffffb0031cb9>] ip_rcv+0x2b9/0x410
kernel: [<ffffffffb00ed08c>] ? packet_rcv+0x4c/0x430
kernel: [<ffffffffaffeb9f9>] __netif_receive_skb_core+0x729/0xa20
kernel: [<ffffffffc06b06f8>] ? mlx5e_poll_rx_cq+0xc8/0x8b0 [mlx5_core]
kernel: [<ffffffffaffebd08>] __netif_receive_skb+0x18/0x60
kernel: [<ffffffffaffebd90>] netif_receive_skb_internal+0x40/0xc0
kernel: [<ffffffffaffebe2c>] netif_receive_skb+0x1c/0x70
kernel: [<ffffffffc08b22c2>] ri_tasklet+0x1a2/0x2b0 [ifb]
kernel: [<ffffffffafa9a793>] tasklet_action+0x83/0x140
kernel: [<ffffffffafa9a945>] __do_softirq+0xf5/0x280
kernel: [<ffffffffb0122d2c>] call_softirq+0x1c/0x30
kernel: [<ffffffffafa2d625>] do_softirq+0x65/0xa0
- Will be seen on devices such as
mlx5Ethernet which doCHECKSUM_COMPLETEreceive offloading.
Environment
- Red Hat Enterprise Linux 7.5 (
kernel-3.10.0-862.el7) and earlier - packets redirected to TFB driver using tc mirred (mirroring).
- Network interface using
CHECKSUM_COMPLETEoffloading, eg:- Mellanox ConnectX-4 in Ethernet mode using
mlx5driver (MT27710 with PCI ID15b3:1015)
- Mellanox ConnectX-4 in Ethernet mode using
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.