Re: [PATCH v3 net-next 0/2] net: centralize net_device MTU bounds checking

From: David Miller
Date: Thu Oct 13 2016 - 09:38:52 EST


From: Jarod Wilson <jarod@xxxxxxxxxx>
Date: Fri, 7 Oct 2016 22:04:32 -0400

> While looking into an MTU issue with sfc, I started noticing that almost
> every NIC driver with an ndo_change_mtu function implemented almost
> exactly the same range checks, and in many cases, that was the only
> practical thing their ndo_change_mtu function was doing. Quite a few
> drivers have either 68, 64, 60 or 46 as their minimum MTU value checked,
> and then various sizes from 1500 to 65535 for their maximum MTU value. We
> can remove a whole lot of redundant code here if we simple store min_mtu
> and max_mtu in net_device, and check against those in net/core/dev.c's
> dev_set_mtu().
>
> This pair of patches looks to introduce centralized MTU range checking
> infrastructure, while maintaining compatibility with all existing drivers,
> and start to make use of it, converting all eth_change_mtu/ether_setup users
> over to this new infra.
>
> Assuming these pass review muster, I've got a ton of follow-on patches to
> clean up MTU settings for everything in the kernel with an ndo_change_mtu.
>
> This work is all staged in a (rebasing) git tree here:
>
> https://github.com/jarodwilson/linux-muck
>
> The master branch is based on net-next from Oct 7, and carries these two
> patches, plus a ton of follow-on patches to eliminate MTU range checks
> and change_mtu functions where possible. All patches were successfully
> built across 160 various arch and config combos by the 0-day folks.
> (Thanks to Andrew Lunn for the suggestion to get that going).

Looks great, series applied, thanks Jarod!