eth: Rename and properly align br_reserved_address array
Since this array is no longer part of the bridge driver, it should have an 'eth' prefix not 'br'. We also assume that either it's 16-bit-aligned or the architecture has efficient unaligned access. Ensure the first of these is true by explicitly aligning it. Signed-off-by: Ben Hutchings <bhutchings@solarflare.com> Acked-by: John Fastabend <john.r.fastabend@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
		
					parent
					
						
							
								46acc460c0
							
						
					
				
			
			
				commit
				
					
						2bc80059fe
					
				
			
		
					 2 changed files with 4 additions and 3 deletions
				
			
		|  | @ -52,7 +52,8 @@ extern struct net_device *alloc_etherdev_mqs(int sizeof_priv, unsigned int txqs, | |||
| #define alloc_etherdev_mq(sizeof_priv, count) alloc_etherdev_mqs(sizeof_priv, count, count) | ||||
| 
 | ||||
| /* Reserved Ethernet Addresses per IEEE 802.1Q */ | ||||
| static const u8 br_reserved_address[ETH_ALEN] = { 0x01, 0x80, 0xc2, 0x00, 0x00, 0x00 }; | ||||
| static const u8 eth_reserved_addr_base[ETH_ALEN] __aligned(2) = | ||||
| { 0x01, 0x80, 0xc2, 0x00, 0x00, 0x00 }; | ||||
| 
 | ||||
| /**
 | ||||
|  * is_link_local_ether_addr - Determine if given Ethernet address is link-local | ||||
|  | @ -64,7 +65,7 @@ static const u8 br_reserved_address[ETH_ALEN] = { 0x01, 0x80, 0xc2, 0x00, 0x00, | |||
| static inline bool is_link_local_ether_addr(const u8 *addr) | ||||
| { | ||||
| 	__be16 *a = (__be16 *)addr; | ||||
| 	static const __be16 *b = (const __be16 *)br_reserved_address; | ||||
| 	static const __be16 *b = (const __be16 *)eth_reserved_addr_base; | ||||
| 	static const __be16 m = cpu_to_be16(0xfff0); | ||||
| 
 | ||||
| 	return ((a[0] ^ b[0]) | (a[1] ^ b[1]) | ((a[2] ^ b[2]) & m)) == 0; | ||||
|  |  | |||
|  | @ -358,7 +358,7 @@ void br_dev_setup(struct net_device *dev) | |||
| 	br->bridge_id.prio[0] = 0x80; | ||||
| 	br->bridge_id.prio[1] = 0x00; | ||||
| 
 | ||||
| 	memcpy(br->group_addr, br_reserved_address, ETH_ALEN); | ||||
| 	memcpy(br->group_addr, eth_reserved_addr_base, ETH_ALEN); | ||||
| 
 | ||||
| 	br->stp_enabled = BR_NO_STP; | ||||
| 	br->group_fwd_mask = BR_GROUPFWD_DEFAULT; | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Ben Hutchings
				Ben Hutchings