Patchwork [8/9] bonding: use is_zero_ether_addr

login
register
mail settings
Submitter stephen hemminger
Date June 13, 2009, 5:02 a.m.
Message ID <20090613050422.202722960@vyatta.com>
Download mbox | patch
Permalink /patch/28656/
State Accepted
Delegated to: David Miller
Headers show

Comments

stephen hemminger - June 13, 2009, 5:02 a.m.
Remove bogus non-portable possibly unaligned way of testing
for zero addres..

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>

Patch

--- a/drivers/net/bonding/bond_sysfs.c	2009-06-12 21:46:35.171609407 -0700
+++ b/drivers/net/bonding/bond_sysfs.c	2009-06-12 21:46:36.103625198 -0700
@@ -33,6 +33,7 @@ 
 #include <linux/ctype.h>
 #include <linux/inet.h>
 #include <linux/rtnetlink.h>
+#include <linux/etherdevice.h>
 #include <net/net_namespace.h>
 
 #include "bonding.h"
@@ -275,10 +276,9 @@  static ssize_t bonding_store_slaves(stru
 		/* If this is the first slave, then we need to set
 		   the master's hardware address to be the same as the
 		   slave's. */
-		if (!(*((u32 *) & (bond->dev->dev_addr[0])))) {
+		if (is_zero_ether_addr(bond->dev->dev_addr))
 			memcpy(bond->dev->dev_addr, dev->dev_addr,
 			       dev->addr_len);
-		}
 
 		/* Set the slave's MTU to match the bond */
 		original_mtu = dev->mtu;