The patch titled Subject: bitops: more BITS_TO_* macros has been removed from the -mm tree. Its filename was bitops-more-bits_to_-macros.patch This patch was dropped because an updated version will be merged ------------------------------------------------------ From: Yury Norov <yury.norov@xxxxxxxxx> Subject: bitops: more BITS_TO_* macros Introduce BITS_TO_U64, BITS_TO_U32 and BITS_TO_BYTES as they are handy in the following patches (BITS_TO_U32 specifically). Reimplement tools/ version of the macros according to the kernel implementation. Also fix indentation for BITS_PER_TYPE definition. [akpm@xxxxxxxxxxxxxxxxxxxx: fix fs/ocfs2/dlm/dlmcommon.h] [akpm@xxxxxxxxxxxxxxxxxxxx: fix drivers/net/ethernet/broadcom/bnx2x/bnx2x_init.h] Link: http://lkml.kernel.org/r/20190501010636.30595-3-ynorov@xxxxxxxxxxx Signed-off-by: Yury Norov <ynorov@xxxxxxxxxxx> Reviewed-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> Cc: Rasmus Villemoes <linux@xxxxxxxxxxxxxxxxxx> Cc: Amritha Nambiar <amritha.nambiar@xxxxxxxxx> Cc: Willem de Bruijn <willemb@xxxxxxxxxx> Cc: Kees Cook <keescook@xxxxxxxxxxxx> Cc: Matthew Wilcox <willy@xxxxxxxxxxxxx> Cc: "Tobin C . Harding" <tobin@xxxxxxxxxx> Cc: Will Deacon <will.deacon@xxxxxxx> Cc: Steffen Klassert <steffen.klassert@xxxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- drivers/net/ethernet/broadcom/bnx2x/bnx2x_init.h | 3 ++- fs/ocfs2/dlm/dlmcommon.h | 6 ++---- include/linux/bitops.h | 5 ++++- tools/include/linux/bitops.h | 9 +++++---- 4 files changed, 13 insertions(+), 10 deletions(-) --- a/include/linux/bitops.h~bitops-more-bits_to_-macros +++ a/include/linux/bitops.h @@ -4,8 +4,11 @@ #include <asm/types.h> #include <linux/bits.h> -#define BITS_PER_TYPE(type) (sizeof(type) * BITS_PER_BYTE) +#define BITS_PER_TYPE(type) (sizeof(type) * BITS_PER_BYTE) #define BITS_TO_LONGS(nr) DIV_ROUND_UP(nr, BITS_PER_TYPE(long)) +#define BITS_TO_U64(nr) DIV_ROUND_UP(nr, BITS_PER_TYPE(u64)) +#define BITS_TO_U32(nr) DIV_ROUND_UP(nr, BITS_PER_TYPE(u32)) +#define BITS_TO_BYTES(nr) DIV_ROUND_UP(nr, BITS_PER_TYPE(char)) extern unsigned int __sw_hweight8(unsigned int w); extern unsigned int __sw_hweight16(unsigned int w); --- a/tools/include/linux/bitops.h~bitops-more-bits_to_-macros +++ a/tools/include/linux/bitops.h @@ -13,10 +13,11 @@ #include <linux/bits.h> #include <linux/compiler.h> -#define BITS_TO_LONGS(nr) DIV_ROUND_UP(nr, BITS_PER_BYTE * sizeof(long)) -#define BITS_TO_U64(nr) DIV_ROUND_UP(nr, BITS_PER_BYTE * sizeof(u64)) -#define BITS_TO_U32(nr) DIV_ROUND_UP(nr, BITS_PER_BYTE * sizeof(u32)) -#define BITS_TO_BYTES(nr) DIV_ROUND_UP(nr, BITS_PER_BYTE) +#define BITS_PER_TYPE(type) (sizeof(type) * BITS_PER_BYTE) +#define BITS_TO_LONGS(nr) DIV_ROUND_UP(nr, BITS_PER_TYPE(long)) +#define BITS_TO_U64(nr) DIV_ROUND_UP(nr, BITS_PER_TYPE(u64)) +#define BITS_TO_U32(nr) DIV_ROUND_UP(nr, BITS_PER_TYPE(u32)) +#define BITS_TO_BYTES(nr) DIV_ROUND_UP(nr, BITS_PER_TYPE(char)) extern unsigned int __sw_hweight8(unsigned int w); extern unsigned int __sw_hweight16(unsigned int w); --- a/fs/ocfs2/dlm/dlmcommon.h~bitops-more-bits_to_-macros +++ a/fs/ocfs2/dlm/dlmcommon.h @@ -10,6 +10,8 @@ #ifndef DLMCOMMON_H #define DLMCOMMON_H +#include <linux/bits.h> +#include <linux/bitops.h> #include <linux/kref.h> #define DLM_HB_NODE_DOWN_PRI (0xf000000) @@ -689,10 +691,6 @@ struct dlm_begin_reco __be32 pad2; }; - -#define BITS_PER_BYTE 8 -#define BITS_TO_BYTES(bits) (((bits)+BITS_PER_BYTE-1)/BITS_PER_BYTE) - struct dlm_query_join_request { u8 node_idx; --- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_init.h~bitops-more-bits_to_-macros +++ a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_init.h @@ -17,6 +17,8 @@ #ifndef BNX2X_INIT_H #define BNX2X_INIT_H +#include <linux/bitops.h> + /* Init operation types and structures */ enum { OP_RD = 0x1, /* read a single register */ @@ -296,7 +298,6 @@ static inline void bnx2x_dcb_config_qm(s * possible, the driver should only write the valid vnics into the internal * ram according to the appropriate port mode. */ -#define BITS_TO_BYTES(x) ((x)/8) /* CMNG constants, as derived from system spec calculations */ _ Patches currently in -mm which might be from yury.norov@xxxxxxxxx are mm-slub-avoid-double-string-traverse-in-kmem_cache_flags.patch lib-add-test-for-bitmap_parse.patch lib-make-bitmap_parse_user-a-wrapper-on-bitmap_parse.patch lib-rework-bitmap_parse.patch lib-new-testcases-for-bitmap_parse_user.patch cpumask-dont-calculate-length-of-the-input-string.patch