net: make dev_set_mtu() honor notification return code
authorVeaceslav Falico <vfalico@redhat.com>
Fri, 10 Jan 2014 15:56:25 +0000 (16:56 +0100)
committerDavid S. Miller <davem@davemloft.net>
Mon, 13 Jan 2014 23:19:26 +0000 (15:19 -0800)
commit2315dc91a5059d7da9a8b9b9daf78d695c11383e
tree751234af7ab27daebdf18cb4b08ef8247cabb52e
parent7e11daa7c19ec319fa4b750fd249a18957f17797
net: make dev_set_mtu() honor notification return code

Currently, after changing the MTU for a device, dev_set_mtu() calls
NETDEV_CHANGEMTU notification, however doesn't verify it's return code -
which can be NOTIFY_BAD - i.e. some of the net notifier blocks refused this
change, and continues nevertheless.

To fix this, verify the return code, and if it's an error - then revert the
MTU to the original one, notify again and pass the error code.

CC: Jiri Pirko <jiri@resnulli.us>
CC: "David S. Miller" <davem@davemloft.net>
CC: Eric Dumazet <edumazet@google.com>
CC: Alexander Duyck <alexander.h.duyck@intel.com>
CC: Nicolas Dichtel <nicolas.dichtel@6wind.com>
Signed-off-by: Veaceslav Falico <vfalico@redhat.com>
Reviewed-by: Jiri Pirko <jiri@resnulli.us>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/core/dev.c