lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Fri, 3 Aug 2012 16:40:08 +0100 From: Ben Hutchings <bhutchings@...arflare.com> To: Eric Dumazet <eric.dumazet@...il.com> CC: Yann Dupont <Yann.Dupont@...v-nantes.fr>, "netdev@...r.kernel.org" <netdev@...r.kernel.org>, Herbert Xu <herbert@...dor.apana.org.au> Subject: Re: skb_warn_bad_offload with kernel 3.5 (maybe gso/bridge related ?) On Fri, 2012-08-03 at 10:51 +0200, Eric Dumazet wrote: > On Fri, 2012-08-03 at 10:10 +0200, Yann Dupont wrote: > > Hello everybody, > > > > I have a machine using ceph rbd volume, as a client (rbd module) to > > backup data. > > > > I was running kernel 3.2.22 ok. Tried 3.5.0 because some rbd fixes went in. > > > > Now, shortly after the start, my logs are filled by that : > > > > Jul 31 18:15:01 singleton.u06.univ-nantes.prive kernel: [ 1175.780860] > > WARNING: at net/core/dev.c:1888 skb_warn_bad_offload+0xb6/0xc1() > > Jul 31 18:15:01 singleton.u06.univ-nantes.prive kernel: [ 1175.780920] > > Hardware name: PowerEdge M605 > > Jul 31 18:15:01 singleton.u06.univ-nantes.prive kernel: [ 1175.780990] : > > caps=(0x0000000000005000, 0x0000000000000000) len=7292 data_len=5792 > > gso_size=1448 gso_type=1 ip_summed=1 > > Jul 31 18:15:01 singleton.u06.univ-nantes.prive kernel: [ 1175.781071] > > Modules linked in: rbd libceph ipt_MASQUERADE iptable_nat nf_nat > > ipt_REJECT veth fuse xt_physdev xt_iprange xt_multiport ip6table_filter > > ip6_tables xt_LOG xt_limit xt_tcpudp xt_state iptable_filter ip_tables > > x_tables nf_conntrack_tftp nf_conntrack_ftp nf_conntrack_ipv4 > > nf_defrag_ipv4 8021q bridge stp llc ext2 mbcache dm_round_robin > > dm_multipath scsi_dh nf_conntrack_ipv6 nf_conntrack nf_defrag_ipv6 ipv6 > > powernow_k8 freq_table mperf kvm_amd snd_pcm kvm snd_timer snd soundcore > > snd_page_alloc tpm_tis tpm tpm_bios pcspkr evdev psmouse microcode > > joydev dcdbas shpchp i2c_nforce2 pci_hotplug serio_raw processor > > i2c_core hid_generic thermal_sys hed button xfs exportfs dm_mod ses > > enclosure usbhid hid sg sr_mod sd_mod cdrom usb_storage lpfc > > scsi_transport_fc scsi_tgt ohci_hcd bnx2x mptsas mptscsih bnx2 mptbase > > scsi_transport_sas crc32c scsi_mod libcrc32c mdio ehci_hcd [last > > unloaded: scsi_wait_scan] > > Jul 31 18:15:01 singleton.u06.univ-nantes.prive kernel: [ 1175.785995] > > Pid: 0, comm: swapper/0 Not tainted 3.5.0-dsiun-120521 #5 > > Jul 31 18:15:01 singleton.u06.univ-nantes.prive kernel: [ 1175.786055] > > Call Trace: > > Jul 31 18:15:01 singleton.u06.univ-nantes.prive kernel: [ 1175.786108] > > <IRQ> [<ffffffff813bde00>] ? skb_warn_bad_offload+0x6f/0xc1 > > Jul 31 18:15:01 singleton.u06.univ-nantes.prive kernel: [ 1175.786209] > > [<ffffffff8103a109>] ? warn_slowpath_common+0x79/0xc0 > > Jul 31 18:15:01 singleton.u06.univ-nantes.prive kernel: [ 1175.786269] > > [<ffffffff8103a205>] ? warn_slowpath_fmt+0x45/0x50 > > Jul 31 18:15:01 singleton.u06.univ-nantes.prive kernel: [ 1175.786330] > > [<ffffffff81068647>] ? get_nohz_timer_target+0x57/0xd0 > > Jul 31 18:15:01 singleton.u06.univ-nantes.prive kernel: [ 1175.786390] > > [<ffffffff813bde47>] ? skb_warn_bad_offload+0xb6/0xc1 > > Jul 31 18:15:01 singleton.u06.univ-nantes.prive kernel: [ 1175.786452] > > [<ffffffff813110e7>] ? skb_gso_segment+0x207/0x280 [...] > I dont know, maybe its more a GRO issue ? > > When a NIC delivers skbs with ip_summed set to CHECKSUM_UNNECESSARY, > should resulting GRO packet have ip_summed set to CHECKSUM_PARTIAL ? I think GRO is doing the right thing, and I can't think why we should see ip_summed = CHECKSUM_PARTIAL if the skb is forwarded by a bridge. I think skb_gso_segment() now needs to handle CHECKSUM_UNNECESSARY without warning, and it can be done somewhat more efficiently (as there is no need to copy payload and generate checksums). By the way, the warning in skb_gso_segment() is not new, even though I changed it recently. I don't know why it might have started being triggered between 3.2 and 3.5. Ben. -- Ben Hutchings, Staff Engineer, Solarflare Not speaking for my employer; that's the marketing department's job. They asked us to note that Solarflare product names are trademarked. -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists