This bug is awaiting verification that the kernel in -proposed solves
the problem. Please test the kernel and update this bug with the
results. If the problem is solved, change the tag 'verification-needed-
trusty' to 'verification-done-trusty'. If the problem still exists,
change the tag 'verification-needed-trusty' to 'verification-failed-
trusty'.

If verification is not done by 5 working days from today, this fix will
be dropped from the source code, and this bug will be closed.

See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how
to enable and use -proposed. Thank you!


** Tags added: verification-needed-trusty

** Tags added: verification-needed-xenial

-- 
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/1668042

Title:
  [Xenial - 16.04 ]Bonding driver - stack corruption when trying to copy
  20 bytes to a sockaddr

Status in linux package in Ubuntu:
  Fix Committed
Status in linux source package in Trusty:
  Fix Committed
Status in linux source package in Xenial:
  Fix Committed

Bug description:
  
  In Ubuntu Xenial with kernel 4.4.0-65, we get kernel Panic after scenario [1].

  patch [2] should fix the issue

      When using an IPoIB bond currently only active-backup mode is a valid
      use case and this commit strengthens it.

      Since commit 2ab82852a270 ("net/bonding: Enable bonding to enslave
      netdevices not supporting set_mac_address()") was introduced till
      4.7-rc1, IPoIB didn't support the set_mac_address ndo, and hence the
      fail over mac policy always applied to IPoIB bonds.

      With the introduction of commit 492a7e67ff83 ("IB/IPoIB: Allow setting
      the device address"), that doesn't hold and practically IPoIB bonds are
      broken as of that. To fix it, lets go to fail over mac if the device
      doesn't support the ndo OR this is IPoIB device.

      As a by-product, this commit also prevents a stack corruption which
      occurred when trying to copy 20 bytes (IPoIB) device address
      to a sockaddr struct that has only 16 bytes of storage.


  [1]
  Get panic after create bond with down/updelay and restart NIC driver
  Configure bond with down/updelay

  cat /etc/network/interfaces
  auto bond1
  iface bond1 inet static
  address 31.136.42.17
  netmask 255.255.0.0
  bond-slaves ib0 ib1
  bond-miimon 100
  bond-updelay 5000
  bond-mode active-backup
  bond-primary ib1
  bond-downdelay 5000

  auto ib0
  iface ib0 inet manual
  bond-master bond1

  auto ib1
  iface ib1 inet manual
  bond-master bond1

  modprobe -r <Ipoib-nic-driver>

  
  [2]
  1533e77315220dc1d5ec3bd6d9fe32e2aa0a74c0
  net/bonding: Enforce active-backup policy for IPoIB bonds

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1668042/+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