@jsalisbury: I figured it out...

We're talking about two issues here.

The first one is unable to set MTU larger than 1500 on some devices.

Commit e84f31d (yakkety), "net: centralize net_device min/max MTU
checking", introduced net_device.min_mtu and net_device.max_mtu. These
values will be checked before net_device_ops.ndo_change_mtu().

Then the second commit 04db90d (yakkety) set the default value of
min_mtu to ETH_MIN_MTU(68) and max_mtu to ETH_DATA_LEN(1500), removed
*most* of the ndo_change_mtu() callback, and initialize min_mtu/max_mtu
in each driver if it should be something different than the default
values.

Here I say most because intel drivers are not modified by this commit.
Intel drivers are handled by commit 91c527a5. My e1000e works properly
after this commit is merged. For bonding devices it's commit 31c0541.

The second issue is it shows
"Invalid MTU 9000 requested, hw max 68"
instead of 
"Invalid MTU 9000 requested, hw max 1500".

This is a typo in commit 04db90d and can be fixed by commit a0e65de.

A test kernel with 91c527a5, 31c0541, and a0e65de merged can be found at
https://people.canonical.com/~jesse/lp1679823/

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

Title:
  bond0: Invalid MTU 9000 requested, hw max 1500 with kernel 4.10 (or
  4.8.0-49)

Status in Linux:
  Unknown
Status in linux package in Ubuntu:
  Triaged
Status in linux-hwe package in Ubuntu:
  Confirmed
Status in linux-hwe-edge package in Ubuntu:
  Confirmed
Status in linux source package in Yakkety:
  In Progress
Status in linux-hwe source package in Yakkety:
  Confirmed
Status in linux-hwe-edge source package in Yakkety:
  Confirmed
Status in linux source package in Zesty:
  Fix Released
Status in linux-hwe source package in Zesty:
  Confirmed
Status in linux-hwe-edge source package in Zesty:
  Confirmed

Bug description:
  Since I upgraded the kernel from linux-image-4.8.0-46-generic to
  linux-image-extra-4.10.0-14-generic I'm facing an issue when I want to
  change the MTU.

  It seems to be known bug already fixed:
  https://bugzilla.kernel.org/show_bug.cgi?id=194763

  # ip l sh eno49
  2: eno49: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 9000 qdisc mq master 
bond0 state UP mode DEFAULT group default qlen 1000
      link/ether 5c:b9:01:8a:61:e9 brd ff:ff:ff:ff:ff:ff

  # ip l sh eno50
  3: eno50: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 9000 qdisc mq master 
bond0 state UP mode DEFAULT group default qlen 1000
      link/ether 5c:b9:01:8a:61:e9 brd ff:ff:ff:ff:ff:ff

  # ip l sh bond0
  6: bond0: <BROADCAST,MULTICAST,MASTER,UP,LOWER_UP> mtu 1500 qdisc noqueue 
state UP mode DEFAULT group default qlen 1000
      link/ether 5c:b9:01:8a:61:e9 brd ff:ff:ff:ff:ff:ff

  # ip l set mtu 9000 bond0
  RTNETLINK answers: Invalid argument

  root@controller002[SRV][YUL]:~# tail -1 /var/log/syslog
  Apr  4 19:36:28 controller002 kernel: [ 8869.077853] bond0: Invalid MTU 9000 
requested, hw max 1500

  # modinfo ixgbe
  filename:       
/lib/modules/4.10.0-14-generic/kernel/drivers/net/ethernet/intel/ixgbe/ixgbe.ko
  version:        4.4.0-k
  license:        GPL
  description:    Intel(R) 10 Gigabit PCI Express Network Driver

  # modinfo bonding
  filename:       
/lib/modules/4.10.0-14-generic/kernel/drivers/net/bonding/bonding.ko
  author:         Thomas Davis, tada...@lbl.gov and many others
  description:    Ethernet Channel Bonding Driver, v3.7.1
  version:        3.7.1

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