diff options
| author | Andy Shevchenko <[email protected]> | 2024-05-07 23:01:31 +0300 | 
|---|---|---|
| committer | Yury Norov <[email protected]> | 2024-05-19 16:12:38 -0700 | 
| commit | 9f2c2d6ba13da08643c65b948ce5e3d616864c47 (patch) | |
| tree | ed722d46a1e9847db51651fff6aac385a9ba0e73 | |
| parent | fe708f915541b0b7b9ba066f73007fde69a0d2ea (diff) | |
bitops: Move aligned_byte_mask() to wordpart.h
The bitops.h is for bit related operations. The aligned_byte_mask()
is about byte (or part of the machine word) operations, for which
we have a separate header, move the mentioned macro to wordpart.h
to consolidate similar operations.
Signed-off-by: Andy Shevchenko <[email protected]>
Signed-off-by: Yury Norov <[email protected]>
| -rw-r--r-- | include/linux/bitops.h | 7 | ||||
| -rw-r--r-- | include/linux/wordpart.h | 7 | ||||
| -rw-r--r-- | lib/usercopy.c | 1 | 
3 files changed, 8 insertions, 7 deletions
| diff --git a/include/linux/bitops.h b/include/linux/bitops.h index 57ecef354f47..3313d2c04e6d 100644 --- a/include/linux/bitops.h +++ b/include/linux/bitops.h @@ -8,13 +8,6 @@  #include <uapi/linux/kernel.h> -/* Set bits in the first 'n' bytes when loaded from memory */ -#ifdef __LITTLE_ENDIAN -#  define aligned_byte_mask(n) ((1UL << 8*(n))-1) -#else -#  define aligned_byte_mask(n) (~0xffUL << (BITS_PER_LONG - 8 - 8*(n))) -#endif -  #define BITS_PER_TYPE(type)	(sizeof(type) * BITS_PER_BYTE)  #define BITS_TO_LONGS(nr)	__KERNEL_DIV_ROUND_UP(nr, BITS_PER_TYPE(long))  #define BITS_TO_U64(nr)		__KERNEL_DIV_ROUND_UP(nr, BITS_PER_TYPE(u64)) diff --git a/include/linux/wordpart.h b/include/linux/wordpart.h index f6f8f83b15b0..4ca1ba66d2f0 100644 --- a/include/linux/wordpart.h +++ b/include/linux/wordpart.h @@ -39,4 +39,11 @@   */  #define REPEAT_BYTE(x)	((~0ul / 0xff) * (x)) +/* Set bits in the first 'n' bytes when loaded from memory */ +#ifdef __LITTLE_ENDIAN +#  define aligned_byte_mask(n) ((1UL << 8*(n))-1) +#else +#  define aligned_byte_mask(n) (~0xffUL << (BITS_PER_LONG - 8 - 8*(n))) +#endif +  #endif // _LINUX_WORDPART_H diff --git a/lib/usercopy.c b/lib/usercopy.c index d29fe29c6849..4b62e6299cc8 100644 --- a/lib/usercopy.c +++ b/lib/usercopy.c @@ -3,6 +3,7 @@  #include <linux/fault-inject-usercopy.h>  #include <linux/instrumented.h>  #include <linux/uaccess.h> +#include <linux/wordpart.h>  #include <linux/nospec.h>  /* out-of-line parts */ |