Project

General

Profile

Actions

Bug #224

closed

bat0: hw csum failure on raspberry

Added by Michael Imhof over 8 years ago. Updated about 6 years ago.

Status:
Rejected
Priority:
Normal
Assignee:
Target version:
-
Start date:
11/14/2015
Due date:
% Done:

0%

Estimated time:

Description

I am running bat-adv under raspbian on a raspberrypi b+ .
Unfortunately my syslog gets spammed multiple times a second due to a hw csum failure.

root@raspiff:~# cat /etc/os-release
PRETTY_NAME="Raspbian GNU/Linux 8 (jessie)"
NAME="Raspbian GNU/Linux"
VERSION_ID="8"
VERSION="8 (jessie)"
ID=raspbian
ID_LIKE=debian
HOME_URL="http://www.raspbian.org/"
SUPPORT_URL="http://www.raspbian.org/RaspbianForums"
BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs"

root@raspiff:~# uname -a
Linux raspiff 4.1.7+ #817 PREEMPT Sat Sep 19 15:25:36 BST 2015 armv6l GNU/Linux

root@raspiff:~# dmesg
...
[116975.356687] bat0: hw csum failure
[116975.356844] CPU: 0 PID: 95 Comm: systemd-journal Not tainted 4.1.7+ #817
[116975.356863] Hardware name: BCM2708
[116975.356941] [<c0016d88>] (unwind_backtrace) from [<c0013b50>] (show_stack+0x20/0x24)
[116975.357026] [<c0013b50>] (show_stack) from [<c0586bf8>] (dump_stack+0x20/0x28)
[116975.357150] [<c0586bf8>] (dump_stack) from [<c04a7630>] (netdev_rx_csum_fault+0x3c/0x48)
[116975.357202] [<c04a7630>] (netdev_rx_csum_fault) from [<c049d698>] (_skb_checksum_complete+0xb0/0xb4)
[116975.357319] [<c049d698>] (
_skb_checksum_complete) from [<c051e1a8>] (igmp_rcv+0x8c/0x7dc)
[116975.357403] [<c051e1a8>] (igmp_rcv) from [<c04e04bc>] (ip_local_deliver_finish+0xdc/0x250)
[116975.357441] [<c04e04bc>] (ip_local_deliver_finish) from [<c04e0b04>] (ip_local_deliver+0x4c/0xc0)
[116975.357512] [<c04e0b04>] (ip_local_deliver) from [<c04e0768>] (ip_rcv_finish+0x138/0x35c)
[116975.357541] [<c04e0768>] (ip_rcv_finish) from [<c04e0dc4>] (ip_rcv+0x24c/0x3a0)
[116975.357613] [<c04e0dc4>] (ip_rcv) from [<c04a4d30>] (_netif_receive_skb_core+0x61c/0xa54)
[116975.357647] [<c04a4d30>] (
_netif_receive_skb_core) from [<c04a76f4>] (_netif_receive_skb+0x20/0x7c)
[116975.357683] [<c04a76f4>] (
_netif_receive_skb) from [<c04a8678>] (process_backlog+0x7c/0xfc)
[116975.357754] [<c04a8678>] (process_backlog) from [<c04a7ca8>] (net_rx_action+0x188/0x3c4)
[116975.357802] [<c04a7ca8>] (net_rx_action) from [<c0027a3c>] (_do_softirq+0x114/0x3b4)
[116975.357876] [<c0027a3c>] (
_do_softirq) from [<c0028070>] (irq_exit+0xcc/0x120)
[116975.357916] [<c0028070>] (irq_exit) from [<c0061260>] (_handle_domain_irq+0x84/0xe0)
[116975.357998] [<c0061260>] (
_handle_domain_irq) from [<c00093a4>] (asm_do_IRQ+0x2c/0x30)
[116975.358040] [<c00093a4>] (asm_do_IRQ) from [<c058c648>] (_irq_usr+0x48/0xc0)
[116975.358103] Exception stack(0xda4c9fb0 to 0xda4c9ff8)
[116975.358129] 9fa0: 00000008 00000000 00000001 00000000
[116975.358155] 9fc0: b6511268 bef6eb4c 000ab268 00000000 00000007 00000000 b6511200 807f6408
[116975.358179] 9fe0: 000000c7 bef6eb00 7f5de5c0 7f5f4d1c 00000010 ffffffff
[116975.367184] bat0: hw csum failure
[116975.367271] CPU: 0 PID: 95 Comm: systemd-journal Not tainted 4.1.7+ #817
[116975.367286] Hardware name: BCM2708
[116975.367435] [<c0016d88>] (unwind_backtrace) from [<c0013b50>] (show_stack+0x20/0x24)
[116975.367566] [<c0013b50>] (show_stack) from [<c0586bf8>] (dump_stack+0x20/0x28)
[116975.367647] [<c0586bf8>] (dump_stack) from [<c04a7630>] (netdev_rx_csum_fault+0x3c/0x48)
[116975.367697] [<c04a7630>] (netdev_rx_csum_fault) from [<c049d698>] (
_skb_checksum_complete+0xb0/0xb4)
[116975.367875] [<c049d698>] (_skb_checksum_complete) from [<c051e1a8>] (igmp_rcv+0x8c/0x7dc)
[116975.367921] [<c051e1a8>] (igmp_rcv) from [<c04e04bc>] (ip_local_deliver_finish+0xdc/0x250)
[116975.367998] [<c04e04bc>] (ip_local_deliver_finish) from [<c04e0b04>] (ip_local_deliver+0x4c/0xc0)
[116975.368031] [<c04e0b04>] (ip_local_deliver) from [<c04e0768>] (ip_rcv_finish+0x138/0x35c)
[116975.368062] [<c04e0768>] (ip_rcv_finish) from [<c04e0dc4>] (ip_rcv+0x24c/0x3a0)
[116975.368132] [<c04e0dc4>] (ip_rcv) from [<c04a4d30>] (
_netif_receive_skb_core+0x61c/0xa54)
[116975.368165] [<c04a4d30>] (_netif_receive_skb_core) from [<c04a76f4>] (_netif_receive_skb+0x20/0x7c)
[116975.368239] [<c04a76f4>] (_netif_receive_skb) from [<c04a8678>] (process_backlog+0x7c/0xfc)
[116975.368272] [<c04a8678>] (process_backlog) from [<c04a7ca8>] (net_rx_action+0x188/0x3c4)
[116975.368318] [<c04a7ca8>] (net_rx_action) from [<c0027a3c>] (
_do_softirq+0x114/0x3b4)
[116975.368395] [<c0027a3c>] (_do_softirq) from [<c0028070>] (irq_exit+0xcc/0x120)
[116975.368440] [<c0028070>] (irq_exit) from [<c0061260>] (
_handle_domain_irq+0x84/0xe0)
[116975.368650] [<c0061260>] (_handle_domain_irq) from [<c00093a4>] (asm_do_IRQ+0x2c/0x30)
[116975.368700] [<c00093a4>] (asm_do_IRQ) from [<c058c648>] (
_irq_usr+0x48/0xc0)
[116975.368760] Exception stack(0xda4c9fb0 to 0xda4c9ff8)
[116975.368782] 9fa0: 807f6408 00000000 00000000 00000000
[116975.368844] 9fc0: 00000001 b6fe8f10 0001de30 00000000 807f6408 bef6eb4c 00000000 807f6408
[116975.368872] 9fe0: 7f615ccc bef6eab0 00000310 7f5ded20 60000010 ffffffff
...

This issue was also reported independently on the raspberrypi forum:
https://www.raspberrypi.org/forums/viewtopic.php?t=125888&p=843372

Actions #1

Updated by Michael Imhof over 8 years ago

Problem persists with batman-adv-2015.1

[280099.774438] bat0: hw csum failure
[280099.774496] CPU: 0 PID: 19752 Comm: sshd Tainted: G O 4.1.7+ #817
[280099.774575] Hardware name: BCM2708
[280099.774654] [<c0016d88>] (unwind_backtrace) from [<c0013b50>] (show_stack+0x20/0x24)
[280099.774741] [<c0013b50>] (show_stack) from [<c0586bf8>] (dump_stack+0x20/0x28)
[280099.774823] [<c0586bf8>] (dump_stack) from [<c04a7630>] (netdev_rx_csum_fault+0x3c/0x48)
[280099.774871] [<c04a7630>] (netdev_rx_csum_fault) from [<c049d698>] (_skb_checksum_complete+0xb0/0xb4)
[280099.775301] [<c049d698>] (
_skb_checksum_complete) from [<bf022030>] (rawv6_rcv+0x134/0x350 [ipv6])
[280099.775833] [<bf022030>] (rawv6_rcv [ipv6]) from [<bf022374>] (raw6_local_deliver+0x128/0x24c [ipv6])
[280099.776274] [<bf022374>] (raw6_local_deliver [ipv6]) from [<bf00602c>] (ip6_input_finish+0x78/0x488 [ipv6])
[280099.776668] [<bf00602c>] (ip6_input_finish [ipv6]) from [<bf006968>] (ip6_input+0x30/0x84 [ipv6])
[280099.777090] [<bf006968>] (ip6_input [ipv6]) from [<bf006a9c>] (ip6_mc_input+0xe0/0x228 [ipv6])
[280099.777471] [<bf006a9c>] (ip6_mc_input [ipv6]) from [<bf005f30>] (ip6_rcv_finish+0x40/0xc4 [ipv6])
[280099.777859] [<bf005f30>] (ip6_rcv_finish [ipv6]) from [<bf0067b4>] (ipv6_rcv+0x378/0x4fc [ipv6])
[280099.778121] [<bf0067b4>] (ipv6_rcv [ipv6]) from [<c04a4d7c>] (_netif_receive_skb_core+0x668/0xa54)
[280099.778216] [<c04a4d7c>] (
_netif_receive_skb_core) from [<c04a76f4>] (_netif_receive_skb+0x20/0x7c)
[280099.778255] [<c04a76f4>] (
_netif_receive_skb) from [<c04a8678>] (process_backlog+0x7c/0xfc)
[280099.778330] [<c04a8678>] (process_backlog) from [<c04a7ca8>] (net_rx_action+0x188/0x3c4)
[280099.778378] [<c04a7ca8>] (net_rx_action) from [<c0027a3c>] (_do_softirq+0x114/0x3b4)
[280099.778455] [<c0027a3c>] (
_do_softirq) from [<c0028070>] (irq_exit+0xcc/0x120)
[280099.778498] [<c0028070>] (irq_exit) from [<c0061260>] (_handle_domain_irq+0x84/0xe0)
[280099.778574] [<c0061260>] (
_handle_domain_irq) from [<c00093a4>] (asm_do_IRQ+0x2c/0x30)
[280099.778620] [<c00093a4>] (asm_do_IRQ) from [<c058c2f8>] (_irq_svc+0x38/0xd0)
[280099.778676] Exception stack(0xc87f3dd8 to 0xc87f3e20)
[280099.778697] 3dc0: c87f3e3c 815853a4
[280099.778721] 3de0: c87f3e20 c87f2000 00000004 c87f3e38 815853a0 81585390 00000000 0000000d
[280099.778782] 3e00: c87f3e38 c87f3f64 0000001c c87f3e20 00001108 c01515d0 a0000013 ffffffff
[280099.778838] [<c058c2f8>] (
_irq_svc) from [<c01515d0>] (core_sys_select+0xec/0x360)
[280099.778877] [<c01515d0>] (core_sys_select) from [<c0151914>] (SyS_select+0xd0/0x124)
[280099.778955] [<c0151914>] (SyS_select) from [<c000f700>] (ret_fast_syscall+0x0/0x54)
[280099.779080] bat0: hw csum failure
[280099.779112] CPU: 0 PID: 19752 Comm: sshd Tainted: G O 4.1.7+ #817
[280099.779169] Hardware name: BCM2708
[280099.779218] [<c0016d88>] (unwind_backtrace) from [<c0013b50>] (show_stack+0x20/0x24)
[280099.779259] [<c0013b50>] (show_stack) from [<c0586bf8>] (dump_stack+0x20/0x28)
[280099.779340] [<c0586bf8>] (dump_stack) from [<c04a7630>] (netdev_rx_csum_fault+0x3c/0x48)
[280099.779389] [<c04a7630>] (netdev_rx_csum_fault) from [<c049d698>] (_skb_checksum_complete+0xb0/0xb4)
[280099.779727] [<c049d698>] (
_skb_checksum_complete) from [<bf0234e4>] (icmpv6_rcv+0x2d8/0xa5c [ipv6])
[280099.780178] [<bf0234e4>] (icmpv6_rcv [ipv6]) from [<bf006128>] (ip6_input_finish+0x174/0x488 [ipv6])
[280099.780599] [<bf006128>] (ip6_input_finish [ipv6]) from [<bf006968>] (ip6_input+0x30/0x84 [ipv6])
[280099.780978] [<bf006968>] (ip6_input [ipv6]) from [<bf006a9c>] (ip6_mc_input+0xe0/0x228 [ipv6])
[280099.781542] [<bf006a9c>] (ip6_mc_input [ipv6]) from [<bf005f30>] (ip6_rcv_finish+0x40/0xc4 [ipv6])
[280099.781963] [<bf005f30>] (ip6_rcv_finish [ipv6]) from [<bf0067b4>] (ipv6_rcv+0x378/0x4fc [ipv6])
[280099.782212] [<bf0067b4>] (ipv6_rcv [ipv6]) from [<c04a4d7c>] (_netif_receive_skb_core+0x668/0xa54)
[280099.782307] [<c04a4d7c>] (
_netif_receive_skb_core) from [<c04a76f4>] (_netif_receive_skb+0x20/0x7c)
[280099.782342] [<c04a76f4>] (
_netif_receive_skb) from [<c04a8678>] (process_backlog+0x7c/0xfc)
[280099.782377] [<c04a8678>] (process_backlog) from [<c04a7ca8>] (net_rx_action+0x188/0x3c4)
[280099.782461] [<c04a7ca8>] (net_rx_action) from [<c0027a3c>] (_do_softirq+0x114/0x3b4)
[280099.782593] [<c0027a3c>] (
_do_softirq) from [<c0028070>] (irq_exit+0xcc/0x120)
[280099.782638] [<c0028070>] (irq_exit) from [<c0061260>] (_handle_domain_irq+0x84/0xe0)
[280099.782714] [<c0061260>] (
_handle_domain_irq) from [<c00093a4>] (asm_do_IRQ+0x2c/0x30)
[280099.782759] [<c00093a4>] (asm_do_IRQ) from [<c058c2f8>] (_irq_svc+0x38/0xd0)
[280099.782815] Exception stack(0xc87f3dd8 to 0xc87f3e20)
[280099.782835] 3dc0: c87f3e3c 815853a4
[280099.782859] 3de0: c87f3e20 c87f2000 00000004 c87f3e38 815853a0 81585390 00000000 0000000d
[280099.782922] 3e00: c87f3e38 c87f3f64 0000001c c87f3e20 00001108 c01515d0 a0000013 ffffffff
[280099.782974] [<c058c2f8>] (
_irq_svc) from [<c01515d0>] (core_sys_select+0xec/0x360)
[280099.783052] [<c01515d0>] (core_sys_select) from [<c0151914>] (SyS_select+0xd0/0x124)
[280099.783092] [<c0151914>] (SyS_select) from [<c000f700>] (ret_fast_syscall+0x0/0x54)

Actions #2

Updated by Michael Imhof over 8 years ago

As a workaround it seems to be sufficient to disable hw rx-checksumming on eth0 in conjunction with the deactivation of generic-receive-offload on bat0:

ethtool -K eth0 rx off
ethtool -K bat0 gro off

Actions #3

Updated by Marek Lindner about 8 years ago

Hi Michael,

thanks for reporting this checksum problem. To be honest, we feel somewhat out of our league for what concerns hardware accelerated checksumming on the raspery pi. May I suggest you send this kernel trace to the netdev mailing list () while cc-ing the batman mailing list () and ask for input. Please keep in mind to not send any HTML within your mail or else it'll be rejected.

Actions #4

Updated by Linus Lüssing about 8 years ago

Hi Michael,

There have been two fixes for "hw csum" errors lately in the Linux kernel. One of them introduced (and fixed: 9b368814b33) by me... but the call trace is different, so probably not your issue. However the second one looks promising:

bpf: add skb_postpush_rcsum and fix dev_forward_skb occasions

Could you retry with a v4.5 Linux kernel?

If it still exists I can have a closer look, had been playing with a Raspberry Pi 2 (which has the same ethernet chip as the Raspberry 1) to fix my checksumming issue three weeks ago, so I had the opportunity to get a little familiar with its hardware checksumming and the Linux checksumming code.

Regards, Linus

Actions #5

Updated by Marek Lindner about 8 years ago

  • Assignee set to Michael Imhof
Actions #6

Updated by Michael Imhof about 8 years ago

Seems to be fixed.

Thanks a lot and kind regards,
Michael

Actions #7

Updated by Sven Eckelmann about 8 years ago

  • Status changed from New to Rejected

Mark it as rejected because the problem is caused by different components in the kernel (which are fixed in newer kernel versions).

Actions #8

Updated by Sven Eckelmann about 6 years ago

Matthias Schiffer created two patches which are somewhat related to this ticket:

They are not really RaspberryPI specific but are related to something which might also have caused your problem. Tt is quite likely that someone searching for the error message will find this ticket.

Actions

Also available in: Atom PDF