On Wed, Sep 07, 2016 at 01:35:35PM -0700, Stephen Hemminger wrote: > On Wed, 7 Sep 2016 15:53:56 -0400 > Jarod Wilson <ja...@redhat.com> wrote: > > > --- a/net/core/dev.c > > +++ b/net/core/dev.c > > @@ -6466,9 +6466,17 @@ int dev_set_mtu(struct net_device *dev, int new_mtu) > > if (new_mtu == dev->mtu) > > return 0; > > > > - /* MTU must be positive. */ > > - if (new_mtu < 0) > > + if (new_mtu < dev->min_mtu) { > > + netdev_err(dev, "Invalid MTU %d requested, hw min %d\n", > > + new_mtu, dev->min_mtu); > > return -EINVAL; > > + } > > + > > + if (new_mtu > dev->max_mtu) { > > + netdev_err(dev, "Invalid MTU %d requested, hw max %d\n", > > + new_mtu, dev->min_mtu); > > + return -EINVAL; > > + } > > > > Maybe don't log something that can be triggered from a user program. > Or at least rate limit it.
Yeah, I was a little bit on the fence on whether to log anything, make it netdev_err, netdev_dbg, or what. Quite a few drivers have a netdev_err for failed MTU changes, while others also have netdev_info spew for successful MTU changes. Maybe a rate-limited netdev_err is the way to go here. -- Jarod Wilson ja...@redhat.com