Message ID | 20240201122216.2634007-12-aleksander.lobakin@intel.com (mailing list archive) |
---|---|
State | Not Applicable |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | ice: add PFCP filter support | expand |
On 2/1/24 13:22, Alexander Lobakin wrote: > Currently, tools have *ALIGN*() macros scattered across the unrelated > headers, as there are only 3 of them and they were added separately > each time on an as-needed basis. > Anyway, let's make it more consistent with the kernel headers and allow > using those macros outside of the mentioned headers. Create > <linux/align.h> inside the tools/ folder and include it where needed. > > Signed-off-by: Alexander Lobakin <aleksander.lobakin@intel.com> > --- > tools/include/linux/align.h | 12 ++++++++++++ > tools/include/linux/bitmap.h | 2 +- > tools/include/linux/mm.h | 5 +---- > 3 files changed, 14 insertions(+), 5 deletions(-) > create mode 100644 tools/include/linux/align.h > Reviewed-by: Przemek Kitszel <przemyslaw.kitszel@intel.com>
On Thu, Feb 01, 2024 at 01:22:06PM +0100, Alexander Lobakin wrote: > Currently, tools have *ALIGN*() macros scattered across the unrelated > headers, as there are only 3 of them and they were added separately > each time on an as-needed basis. > Anyway, let's make it more consistent with the kernel headers and allow > using those macros outside of the mentioned headers. Create > <linux/align.h> inside the tools/ folder and include it where needed. > > Signed-off-by: Alexander Lobakin <aleksander.lobakin@intel.com> Reviewed-by: Yury Norov <yury.norov@gmail.com>
On Wed, Feb 28, 2024 at 08:28:31AM -0800, Yury Norov wrote: > On Thu, Feb 01, 2024 at 01:22:06PM +0100, Alexander Lobakin wrote: > > Currently, tools have *ALIGN*() macros scattered across the unrelated > > headers, as there are only 3 of them and they were added separately > > each time on an as-needed basis. > > Anyway, let's make it more consistent with the kernel headers and allow > > using those macros outside of the mentioned headers. Create > > <linux/align.h> inside the tools/ folder and include it where needed. > > > > Signed-off-by: Alexander Lobakin <aleksander.lobakin@intel.com> > > Reviewed-by: Yury Norov <yury.norov@gmail.com> Sorry, please read this as: Signed-off-by: Yury Norov <yury.norov@gmail.com>
diff --git a/tools/include/linux/align.h b/tools/include/linux/align.h new file mode 100644 index 000000000000..14e34ace80dd --- /dev/null +++ b/tools/include/linux/align.h @@ -0,0 +1,12 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ + +#ifndef _TOOLS_LINUX_ALIGN_H +#define _TOOLS_LINUX_ALIGN_H + +#include <uapi/linux/const.h> + +#define ALIGN(x, a) __ALIGN_KERNEL((x), (a)) +#define ALIGN_DOWN(x, a) __ALIGN_KERNEL((x) - ((a) - 1), (a)) +#define IS_ALIGNED(x, a) (((x) & ((typeof(x))(a) - 1)) == 0) + +#endif /* _TOOLS_LINUX_ALIGN_H */ diff --git a/tools/include/linux/bitmap.h b/tools/include/linux/bitmap.h index f3566ea0f932..8c6852dba04f 100644 --- a/tools/include/linux/bitmap.h +++ b/tools/include/linux/bitmap.h @@ -3,6 +3,7 @@ #define _TOOLS_LINUX_BITMAP_H #include <string.h> +#include <linux/align.h> #include <linux/bitops.h> #include <linux/find.h> #include <stdlib.h> @@ -126,7 +127,6 @@ static inline bool bitmap_and(unsigned long *dst, const unsigned long *src1, #define BITMAP_MEM_ALIGNMENT (8 * sizeof(unsigned long)) #endif #define BITMAP_MEM_MASK (BITMAP_MEM_ALIGNMENT - 1) -#define IS_ALIGNED(x, a) (((x) & ((typeof(x))(a) - 1)) == 0) static inline bool bitmap_equal(const unsigned long *src1, const unsigned long *src2, unsigned int nbits) diff --git a/tools/include/linux/mm.h b/tools/include/linux/mm.h index f3c82ab5b14c..7a6b98f4e579 100644 --- a/tools/include/linux/mm.h +++ b/tools/include/linux/mm.h @@ -2,8 +2,8 @@ #ifndef _TOOLS_LINUX_MM_H #define _TOOLS_LINUX_MM_H +#include <linux/align.h> #include <linux/mmzone.h> -#include <uapi/linux/const.h> #define PAGE_SHIFT 12 #define PAGE_SIZE (_AC(1, UL) << PAGE_SHIFT) @@ -11,9 +11,6 @@ #define PHYS_ADDR_MAX (~(phys_addr_t)0) -#define ALIGN(x, a) __ALIGN_KERNEL((x), (a)) -#define ALIGN_DOWN(x, a) __ALIGN_KERNEL((x) - ((a) - 1), (a)) - #define PAGE_ALIGN(addr) ALIGN(addr, PAGE_SIZE) #define __va(x) ((void *)((unsigned long)(x)))
Currently, tools have *ALIGN*() macros scattered across the unrelated headers, as there are only 3 of them and they were added separately each time on an as-needed basis. Anyway, let's make it more consistent with the kernel headers and allow using those macros outside of the mentioned headers. Create <linux/align.h> inside the tools/ folder and include it where needed. Signed-off-by: Alexander Lobakin <aleksander.lobakin@intel.com> --- tools/include/linux/align.h | 12 ++++++++++++ tools/include/linux/bitmap.h | 2 +- tools/include/linux/mm.h | 5 +---- 3 files changed, 14 insertions(+), 5 deletions(-) create mode 100644 tools/include/linux/align.h