From: Ben Pfaff Date: Mon, 13 May 2013 23:39:26 +0000 (-0700) Subject: netdev-linux: Skip NETDEV_UP test in netdev_linux_set_etheraddr() for taps. X-Git-Tag: sliver-openvswitch-1.10.90-3~6^2~252 X-Git-Url: http://git.onelab.eu/?a=commitdiff_plain;h=bbd5b6f44bcc798a6636f52ed843b1cef1372f43;p=sliver-openvswitch.git netdev-linux: Skip NETDEV_UP test in netdev_linux_set_etheraddr() for taps. netdev_turn_flags_off() does nothing if the flags that one turns off are already off. Reported-by: Ethan Jackson Signed-off-by: Ben Pfaff Acked-by: Ethan Jackson --- diff --git a/lib/netdev-linux.c b/lib/netdev-linux.c index b548996b9..d73115be9 100644 --- a/lib/netdev-linux.c +++ b/lib/netdev-linux.c @@ -977,11 +977,7 @@ netdev_linux_set_etheraddr(struct netdev *netdev_, /* Tap devices must be brought down before setting the address. */ if (is_tap_netdev(netdev_)) { - enum netdev_flags flags; - - if (!netdev_get_flags(netdev_, &flags) && (flags & NETDEV_UP)) { - netdev_turn_flags_off(netdev_, NETDEV_UP, &sf); - } + netdev_turn_flags_off(netdev_, NETDEV_UP, &sf); } error = set_etheraddr(netdev_get_name(netdev_), mac); if (!error || error == ENODEV) {