diff options
author | Jesse Brandeburg <jesse.brandeburg@intel.com> | 2015-08-13 18:34:03 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-08-17 12:14:53 -0700 |
commit | fbaff3ef859a86dc3df2128d2de9f8a6e255a967 (patch) | |
tree | 9823b7e25461a2b5c1f655a8662e3e7ea3385f69 | |
parent | f3ae683f09aff7c53dab8b85d2425d746c8e0d5f (diff) |
net: fix endian check warning in etherdevice.h
Sparse builds have been warning for a really long time now
that etherdevice.h has a conversion that is unsafe.
include/linux/etherdevice.h:79:32: warning: restricted __be16 degrades to integer
This code change fixes the issue and generates the exact
same assembly before/after (checked on x86_64)
Fixes: 2c722fe1c821 (etherdevice: Optimize a few is_<foo>_ether_addr functions)
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
CC: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | include/linux/etherdevice.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/include/linux/etherdevice.h b/include/linux/etherdevice.h index 9012f8775208..eb049c622208 100644 --- a/include/linux/etherdevice.h +++ b/include/linux/etherdevice.h @@ -76,7 +76,7 @@ static inline bool is_link_local_ether_addr(const u8 *addr) #if defined(CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS) return (((*(const u32 *)addr) ^ (*(const u32 *)b)) | - ((a[2] ^ b[2]) & m)) == 0; + (__force int)((a[2] ^ b[2]) & m)) == 0; #else return ((a[0] ^ b[0]) | (a[1] ^ b[1]) | ((a[2] ^ b[2]) & m)) == 0; #endif |