byteorder: use generic C version for value byteswapping
This makes the new implementation of the byteorder helpers match the old in how it degraded when an arch-defined version was not available: 1) swab() - look for arch defined - if not, use generic c version 2) swabp() - look for arch-defined - if not, deref pointer and use swab() 3) swabs() - look for arch defined - if not, use swabp Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com> Cc: "David S. Miller" <davem@davemloft.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
b8e465f494
commit
acf0108a84
@ -47,8 +47,6 @@ static inline __attribute_const__ __u16 ___swab16(__u16 val)
|
||||
{
|
||||
#ifdef __arch_swab16
|
||||
return __arch_swab16(val);
|
||||
#elif defined(__arch_swab16p)
|
||||
return __arch_swab16p(&val);
|
||||
#else
|
||||
return __const_swab16(val);
|
||||
#endif
|
||||
@ -58,8 +56,6 @@ static inline __attribute_const__ __u32 ___swab32(__u32 val)
|
||||
{
|
||||
#ifdef __arch_swab32
|
||||
return __arch_swab32(val);
|
||||
#elif defined(__arch_swab32p)
|
||||
return __arch_swab32p(&val);
|
||||
#else
|
||||
return __const_swab32(val);
|
||||
#endif
|
||||
@ -69,8 +65,6 @@ static inline __attribute_const__ __u64 ___swab64(__u64 val)
|
||||
{
|
||||
#ifdef __arch_swab64
|
||||
return __arch_swab64(val);
|
||||
#elif defined(__arch_swab64p)
|
||||
return __arch_swab64p(&val);
|
||||
#elif defined(__SWAB_64_THRU_32__)
|
||||
__u32 h = val >> 32;
|
||||
__u32 l = val & ((1ULL << 32) - 1);
|
||||
@ -84,8 +78,6 @@ static inline __attribute_const__ __u32 ___swahw32(__u32 val)
|
||||
{
|
||||
#ifdef __arch_swahw32
|
||||
return __arch_swahw32(val);
|
||||
#elif defined(__arch_swahw32p)
|
||||
return __arch_swahw32p(&val);
|
||||
#else
|
||||
return __const_swahw32(val);
|
||||
#endif
|
||||
@ -95,8 +87,6 @@ static inline __attribute_const__ __u32 ___swahb32(__u32 val)
|
||||
{
|
||||
#ifdef __arch_swahb32
|
||||
return __arch_swahb32(val);
|
||||
#elif defined(__arch_swahb32p)
|
||||
return __arch_swahb32p(&val);
|
||||
#else
|
||||
return __const_swahb32(val);
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user