[PATCH 3.18 54/92] arch/powerpc: provide zero_bytemask() for big-endian

From: Greg Kroah-Hartman
Date: Wed Aug 09 2017 - 16:41:18 EST


3.18-stable review patch. If anyone has any objections, please let me know.

------------------

From: Chris Metcalf <cmetcalf@xxxxxxxxxx>

commit 7a5692e6e533fd379081ab06fb58f3f5ee4d80bc upstream.

For some reason, only the little-endian flavor of
powerpc provided the zero_bytemask() implementation.

Reported-by: Michal Sojka <sojkam1@xxxxxxxxxxx>
Acked-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
Signed-off-by: Chris Metcalf <cmetcalf@xxxxxxxxxx>
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

---
arch/powerpc/include/asm/word-at-a-time.h | 5 +++++
1 file changed, 5 insertions(+)

--- a/arch/powerpc/include/asm/word-at-a-time.h
+++ b/arch/powerpc/include/asm/word-at-a-time.h
@@ -40,6 +40,11 @@ static inline bool has_zero(unsigned lon
return (val + c->high_bits) & ~rhs;
}

+static inline unsigned long zero_bytemask(unsigned long mask)
+{
+ return ~1ul << __fls(mask);
+}
+
#else

#ifdef CONFIG_64BIT