Commit 3a48ace3 "bridge: Make bridge_pick_local_hw_addr() easier to reason" didn't initialize 'ea' before trying to compare against it. We need to check that an address has been found. --- vswitchd/bridge.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/vswitchd/bridge.c b/vswitchd/bridge.c index 2bfd926..e1ca17a 100644 --- a/vswitchd/bridge.c +++ b/vswitchd/bridge.c @@ -1077,7 +1077,7 @@ bridge_pick_local_hw_addr(struct bridge *br, uint8_t ea[ETH_ADDR_LEN], !eth_addr_is_local(iface_ea) && !eth_addr_is_reserved(iface_ea) && !eth_addr_is_zero(iface_ea) && - eth_addr_compare_3way(iface_ea, ea) < 0) + (!found_addr || eth_addr_compare_3way(iface_ea, ea) < 0)) { memcpy(ea, iface_ea, ETH_ADDR_LEN); *hw_addr_iface = iface; -- 1.7.4.4 _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev