The dev_disable_lro warning is happening due to some logic issues in the
features code.  The LRO on the VLAN (bond0.200, e.g.) that's being
warned about does end up being disabled by a NETDEV_FEAT_CHANGE callback
when the underlying bond0's features are updated, so the warning is
spurious.

Tracing the dev_disable_lro -> netdev_update_features for the bond0.2004
VLAN, I see:

name="bond0" feat=219db89 hw_feat=20219cbe9 want_feat=20219cbe9
vlan_feat=198069

NETIF_F_LRO = 0x8000

dev_disable_lro
        wanted_features &= ~NETIF_F_LRO
        bond0.2004 wanted_features = 0x200194869        # no LRO

__netdev_update_features
        features = netdev_get_wanted_features
return (dev->features & ~dev->hw_features) | dev->wanted_features;
        (0x19d809 & ~0x23839487b) | 0x200194869
             ^LRO           ^no LRO        ^no LRO
        0x9000 | 0x200194869
$2 = 0x20019d869
            ^ LRO

vlan_dev_fix_features(dev, 0x20019d869)   # has LRO

        struct net_device *real_dev = vlan_dev_priv(dev)->real_dev;
        netdev_features_t old_features = features;

        features &= real_dev->vlan_features;    # 0x198069 has LRO
        features |= NETIF_F_RXCSUM;             # 0x100198069 has LRO
        features &= real_dev->features;         # 0x198009 has LRO

        features |= old_features & NETIF_F_SOFT_FEATURES;  # save GSO / GRO
        features |= NETIF_F_LLTX;

        return features;                         # will have LRO

So, basically, LRO is set in the underlying bond0's features, so it ends
up being kept in the VLAN device's features even though it wasn't in
wanted_features.  Later, dev_disable_lro will call dev_disable_lro on
all the lower devices (the bond0 in this case), and the update of
features for the bond0 will issue a NETDEV_FEAT_CHANGE callback to the
bond0.2004 VLAN, which will then set the features correctly.

The Ubuntu 3.13  __netdev_update_features (called by dev_disable_lro via
netdev_update_features) lacks additional logic found in later kernels to
sync the features to lower devices.  That presumably triggers the
NETDEV_FEAT_CHANGE within the call to __netdev_update_features so that
the bond0.2004 VLAN is updated before we return back to dev_disable_lro
(but I haven't verified this).

I suspect the fix to eliminate the warning is to apply the "sync_lower:"
block from a later kernel __netdev_update_features to 3.13, along with
the netdev_sync_lower_features function it uses.

-- 
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.
https://bugs.launchpad.net/bugs/1771480

Title:
  WARNING: CPU: 28 PID: 34085 at /build/linux-
  90Gc2C/linux-3.13.0/net/core/dev.c:1433 dev_disable_lro+0x87/0x90()

Status in linux package in Ubuntu:
  Incomplete

Bug description:
  I have multiple instances of this dev_disable_lro error in kern.log. Also 
seeing this: 
  systemd-udevd[1452]: timeout: killing 'bridge-network-interface' [2765] 
  <4>May 1 22:56:42 xxx kernel: [ 404.520990] bonding: bond0: Warning: No 
802.3ad response from the link partner for any adapters in the bond 
  <4>May 1 22:56:44 xxx kernel: [ 406.926429] bonding: bond0: Warning: No 
802.3ad response from the link partner for any adapters in the bond 
  <4>May 1 22:56:45 xxx kernel: [ 407.569020] ------------[ cut here 
]------------ 
  <4>May 1 22:56:45 xxx kernel: [ 407.569029] WARNING: CPU: 28 PID: 34085 at 
/build/linux-90Gc2C/linux-3.13.0/net/core/dev.c:1433 
dev_disable_lro+0x87/0x90() 
  <4>May 1 22:56:45 xxx kernel: [ 407.569032] netdevice: bond0.2004 
  <4>May 1 22:56:45 xxx kernel: [ 407.569032] failed to disable LRO! 
  <4>May 1 22:56:45 xxx kernel: [ 407.569035] Modules linked in: 8021q garp mrp 
bridge stp llc bonding iptable_filter ip_tables x_tables nf_conntrack_proto_gre 
nf_conntrack_ipv6 nf_defrag_ipv6 nf_conntrack_ipv4 nf_defrag_ipv4 nf_conntrack 
ipmi_devintf mxm_wmi dcdbas x86_pkg_temp_thermal coretemp kvm_intel kvm 
crct10dif_pclmul crc32_pclmul ghash_clmulni_intel aesni_intel aes_x86_64 lrw 
gf128mul glue_helper ablk_helper cryptd lpc_ich mei_me mei ipmi_si shpchp wmi 
acpi_power_meter mac_hid xfs libcrc32c raid10 usb_storage raid456 
async_raid6_recov async_memcpy async_pq async_xor async_tx xor raid6_pq raid1 
raid0 igb ixgbe i2c_algo_bit multipath ahci dca ptp libahci pps_core linear 
megaraid_sas mdio dm_multipath scsi_dh 
  <4>May 1 22:56:45 xxx kernel: [ 407.569112] CPU: 28 PID: 34085 Comm: brctl 
Not tainted 3.13.0-142-generic #191-Ubuntu 
  <4>May 1 22:56:45 xxx kernel: [ 407.569115] Hardware name: Dell Inc. 
PowerEdge R730xd/072T6D, BIOS 2.7.1 001/22/2018 
  <4>May 1 22:56:45 xxx kernel: [ 407.569118] 0000000000000000 ffff881fcc753c70 
ffffffff8172e7fc ffff881fcc753cb8 
  <4>May 1 22:56:45 xxx kernel: [ 407.569129] 0000000000000009 ffff881fcc753ca8 
ffffffff8106afad ffff883fcc6f8000 
  <4>May 1 22:56:45 xxx kernel: [ 407.569139] ffff883fcc696880 ffff883fcc6f8000 
0000000000000000 ffff881fce82dd40 
  <4>May 1 22:56:45 xxx kernel: [ 407.569150] Call Trace: 
  <4>May 1 22:56:45 xxx kernel: [ 407.569160] [<ffffffff8172e7fc>] 
dump_stack+0x64/0x82 
  <4>May 1 22:56:45 xxx kernel: [ 407.569168] [<ffffffff8106afad>] 
warn_slowpath_common+0x7d/0xa0 
  <4>May 1 22:56:45 xxx kernel: [ 407.569175] [<ffffffff8106b01c>] 
warn_slowpath_fmt+0x4c/0x50 
  <4>May 1 22:56:45 xxx kernel: [ 407.569183] [<ffffffff816342f7>] 
dev_disable_lro+0x87/0x90 
  <4>May 1 22:56:45 xxx kernel: [ 407.569195] [<ffffffffa03f2213>] 
br_add_if+0x1f3/0x430 [bridge] 
  <4>May 1 22:56:45 xxx kernel: [ 407.569205] [<ffffffffa03f2c4d>] 
add_del_if+0x5d/0x90 [bridge] 
  <4>May 1 22:56:45 xxx kernel: [ 407.569215] [<ffffffffa03f353b>] 
br_dev_ioctl+0x5b/0x90 [bridge] 
  <4>May 1 22:56:45 xxx kernel: [ 407.569223] [<ffffffff81646853>] 
dev_ifsioc+0x313/0x360 
  <4>May 1 22:56:45 xxx kernel: [ 407.569230] [<ffffffff8162dac9>] ? 
dev_get_by_name_rcu+0x69/0x90 
  <4>May 1 22:56:45 xxx kernel: [ 407.569237] [<ffffffff81646989>] 
dev_ioctl+0xe9/0x590 
  <4>May 1 22:56:45 xxx kernel: [ 407.569245] [<ffffffff81614b25>] 
sock_do_ioctl+0x45/0x50 
  <4>May 1 22:56:45 xxx kernel: [ 407.569252] [<ffffffff81615050>] 
sock_ioctl+0x1f0/0x2c0 
  <4>May 1 22:56:45 xxx kernel: [ 407.569260] [<ffffffff811d6670>] 
do_vfs_ioctl+0x2e0/0x4c0 
  <4>May 1 22:56:45 xxx kernel: [ 407.569267] [<ffffffff811c4e2e>] ? 
____fput+0xe/0x10 
  <4>May 1 22:56:45 xxx kernel: [ 407.569273] [<ffffffff811d68d1>] 
SyS_ioctl+0x81/0xa0 
  <4>May 1 22:56:45 xxx kernel: [ 407.569283] [<ffffffff8173f8a5>] 
system_call_fastpath+0x2f/0x34 
  <4>May 1 22:56:45 xxx kernel: [ 407.569287] ---[ end trace df5aa31d75a7e2b1 
]--- 
  <4>May 1 22:56:54 xxx kernel: [ 416.320138] bonding: bond1: Warning: the 
permanent HWaddr of enp131s0f0 - a0:36:9f:c1:25:d0 - is still in use by bond1. 
Set the HWaddr of enp131s0f0 to a different address to avoid conflicts. 
  <4>May 1 22:57:00 xxx kernel: [ 422.362677] bonding: bond1: Warning: No 
802.3ad response from the link partner for any adapters in the bond 
  <4>May 1 22:57:07 xxx kernel: [ 429.522843] ------------[ cut here 
]------------ 
  And here: 

  <4>May 1 22:57:07 xxx kernel: [ 429.522843] ------------[ cut here 
]------------ 
  <4>May 1 22:57:07 xxx kernel: [ 429.522853] WARNING: CPU: 0 PID: 34191 at 
/build/linux-90Gc2C/linux-3.13.0/net/core/dev.c:1433 
dev_disable_lro+0x87/0x90() 
  <4>May 1 22:57:07 xxx kernel: [ 429.522857] netdevice: bond1.2001 
  <4>May 1 22:57:07 xxx kernel: [ 429.522857] failed to disable LRO! 
  <4>May 1 22:57:07 xxx kernel: [ 429.522861] Modules linked in: 8021q garp mrp 
bridge stp llc bonding iptable_filter ip_tables x_tables nf_conntrack_proto_gre 
nf_conntrack_ipv6 nf_defrag_ipv6 nf_conntrack_ipv4 nf_defrag_ipv4 nf_conntrack 
ipmi_devintf mxm_wmi dcdbas x86_pkg_temp_thermal coretemp kvm_intel kvm 
crct10dif_pclmul crc32_pclmul ghash_clmulni_intel aesni_intel aes_x86_64 lrw 
gf128mul glue_helper ablk_helper cryptd lpc_ich mei_me mei ipmi_si shpchp wmi 
acpi_power_meter mac_hid xfs libcrc32c raid10 usb_storage raid456 
async_raid6_recov async_memcpy async_pq async_xor async_tx xor raid6_pq raid1 
raid0 igb ixgbe i2c_algo_bit multipath ahci dca ptp libahci pps_core linear 
megaraid_sas mdio dm_multipath scsi_dh 
  <4>May 1 22:57:07 xxx kernel: [ 429.522933] CPU: 0 PID: 34191 Comm: brctl 
Tainted: G W 3.13.0-142-generic #191-Ubuntu 
  <4>May 1 22:57:07 xxx kernel: [ 429.522937] Hardware name: Dell Inc. 
PowerEdge R730xd/072T6D, BIOS 2.7.1 001/22/2018 
  <4>May 1 22:57:07 xxx kernel: [ 429.522940] 0000000000000000 ffff88056ca57c70 
ffffffff8172e7fc ffff88056ca57cb8 
  <4>May 1 22:57:07 xxx kernel: [ 429.522951] 0000000000000009 ffff88056ca57ca8 
ffffffff8106afad ffff883fcc9a3000 
  <4>May 1 22:57:07 xxx kernel: [ 429.522961] ffff881fce800880 ffff883fcc9a3000 
0000000000000000 ffff883fcdb93d40 
  <4>May 1 22:57:07 xxx kernel: [ 429.522972] Call Trace: 
  <4>May 1 22:57:07 xxx kernel: [ 429.522981] [<ffffffff8172e7fc>] 
dump_stack+0x64/0x82 
  <4>May 1 22:57:07 xxx kernel: [ 429.522989] [<ffffffff8106afad>] 
warn_slowpath_common+0x7d/0xa0 
  <4>May 1 22:57:07 xxx kernel: [ 429.522996] [<ffffffff8106b01c>] 
warn_slowpath_fmt+0x4c/0x50 
  <4>May 1 22:57:07 xxx kernel: [ 429.523004] [<ffffffff816342f7>] 
dev_disable_lro+0x87/0x90 
  <4>May 1 22:57:07 xxx kernel: [ 429.523016] [<ffffffffa03f2213>] 
br_add_if+0x1f3/0x430 [bridge] 
  <4>May 1 22:57:07 xxx kernel: [ 429.523027] [<ffffffffa03f2c4d>] 
add_del_if+0x5d/0x90 [bridge] 
  <4>May 1 22:57:07 xxx kernel: [ 429.523038] [<ffffffffa03f353b>] 
br_dev_ioctl+0x5b/0x90 [bridge] 
  <4>May 1 22:57:07 xxx kernel: [ 429.523047] [<ffffffff81646853>] 
dev_ifsioc+0x313/0x360 
  <4>May 1 22:57:07 xxx kernel: [ 429.523054] [<ffffffff8162dac9>] ? 
dev_get_by_name_rcu+0x69/0x90 
  <4>May 1 22:57:07 xxx kernel: [ 429.523061] [<ffffffff81646989>] 
dev_ioctl+0xe9/0x590 
  <4>May 1 22:57:07 xxx kernel: [ 429.523070] [<ffffffff81614b25>] 
sock_do_ioctl+0x45/0x50 
  <4>May 1 22:57:07 xxx kernel: [ 429.523076] [<ffffffff81615050>] 
sock_ioctl+0x1f0/0x2c0 
  <4>May 1 22:57:07 xxx kernel: [ 429.523084] [<ffffffff811d6670>] 
do_vfs_ioctl+0x2e0/0x4c0 
  <4>May 1 22:57:07 xxx kernel: [ 429.523091] [<ffffffff811c4e2e>] ? 
____fput+0xe/0x10 
  <4>May 1 22:57:07 xxx kernel: [ 429.523098] [<ffffffff811d68d1>] 
SyS_ioctl+0x81/0xa0 
  <4>May 1 22:57:07 xxx kernel: [ 429.523107] [<ffffffff8173f8a5>] 
system_call_fastpath+0x2f/0x34 
  <4>May 1 22:57:07 xxx kernel: [ 429.523111] ---[ end trace df5aa31d75a7e2b2 
]--- 

  root@xxx:/var/log# ip link|grep enp 
  6: enp3s0f0: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 9100 qdisc mq master 
bond0 state UP mode DEFAULT group default qlen 1000 
  7: enp3s0f1: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 9100 qdisc mq master 
bond1 state UP mode DEFAULT group default qlen 1000 
  8: enp131s0f0: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 9100 qdisc mq 
master bond1 state UP mode DEFAULT group default qlen 1000 
  9: enp131s0f1: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 9100 qdisc mq 
master bond0 state UP mode DEFAULT group default qlen 1000 
  root@xxx:/ar/log# ethtool -i enp3s0f0 
  driver: ixgbe 
  version: 3.15.1-k 
  firmware-version: 0x800008bd 
  bus-info: 0000:03:00.0 
  supports-statistics: yes 
  supports-test: yes 
  supports-eeprom-access: yes 
  supports-register-dump: yes 
  supports-priv-flags: no 
  root@xxx:/var/log# lsb_release -a 
  No LSB modules are available. 
  Distributor ID: Ubuntu 
  Description: Ubuntu 14.04.5 LTS 
  Release: 14.04 
  Codename: trusty 
  root@xxx:/var/log# cat /proc/version 
  Linux version 3.13.0-142-generic (buildd@lcy01-amd64-014) (gcc version 4.8.4 
(Ubuntu 4.8.4-2ubuntu1~14.04.3) ) #191-Ubuntu SMP Fri Feb 2 12:13:35 UTC 2018

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1771480/+subscriptions

-- 
Mailing list: https://launchpad.net/~kernel-packages
Post to     : kernel-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~kernel-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to