xenserver: Really take devices down in interface-reconfigure.
authorBen Pfaff <blp@nicira.com>
Wed, 5 Aug 2009 18:39:03 +0000 (11:39 -0700)
committerBen Pfaff <blp@nicira.com>
Thu, 6 Aug 2009 23:57:06 +0000 (16:57 -0700)
commit3cc42ebbc144096dc56b618845519daf2d48ef6e
treece3454f2a612084b184231e02d560d3a56c982eb
parent5e93df1c46954b9a2c60c8e11bbf8ea25a1686ce
xenserver: Really take devices down in interface-reconfigure.

When down_netdev was called with deconfigure=True (which is the default),
it would invoke, e.g. "/sbin/ifconfig eth0 down 0.0.0.0", with the
intention of taking the interface down and removing any IP address from it
at the same time.

In fact, this removed any IP address from it and brought the device *up*,
because ifconfig executes its commands in the order that they are
specified, and setting or unsetting an IP address brings a device up.

We could specify the commands in the opposite order ("0.0.0.0 down") but
it seems to me more obviously correct to just run ifconfig twice, so that
is what this commit does.

This commit could break things, because it could be that there is a bug
elsewhere that depends on down_netdev not actually bringing a device down,
but it is needed for the upcoming device renaming commit (to fix bug
NIC-20), because a network device has to be down to be renamed.
xenserver/opt_xensource_libexec_interface-reconfigure