From: Simon Glass <simon.gl...@canonical.com> Add part of this file from Linux v6.14 so we can include it from the linux/overflow.h file. Drop the relevant section from kernel.h
The top of the file is omitted since it defines things used in mbedos and we get an error on SIZE_MAX. Signed-off-by: Simon Glass <simon.gl...@canonical.com> --- Error is: In file included from include/limits.h:6, from lib/mbedtls/external/mbedtls/library/constant_time.c:14: include/linux/limits.h:7:35: error: missing binary operator before token "0" 7 | #define SIZE_MAX (~(size_t)0) | ^ lib/mbedtls/external/mbedtls/library/constant_time_internal.h:65:6: note: in expansion of macro ‘SIZE_MAX’ 65 | #if (SIZE_MAX > 0xffffffffffffffffULL) | ^~~~~~~~ include/linux/limits.h:7:35: error: missing binary operator before token "0" 7 | #define SIZE_MAX (~(size_t)0) | ^ lib/mbedtls/external/mbedtls/library/constant_time_internal.h:71:8: note: in expansion of macro ‘SIZE_MAX’ 71 | #elif (SIZE_MAX > 0xffffffff) || defined(MBEDTLS_HAVE_INT64) | ^~~~~~~~ make[3]: *** [scripts/Makefile.build:256: lib/mbedtls/external/mbedtls/library/constant_time.o] Error 1 make[2]: *** [scripts/Makefile.build:398: lib/mbedtls] Error 2 Changes in v2: - Add new patch to bring in linux/limits.h include/limits.h | 2 ++ include/linux/kernel.h | 12 ------------ include/linux/limits.h | 21 +++++++++++++++++++++ 3 files changed, 23 insertions(+), 12 deletions(-) create mode 100644 include/linux/limits.h diff --git a/include/limits.h b/include/limits.h index 4700cc7a59f..4927cc7333b 100644 --- a/include/limits.h +++ b/include/limits.h @@ -3,6 +3,8 @@ #ifndef _LIMITS_H #define _LIMITS_H +#include <linux/limits.h> + #define INT_MAX 0x7fffffff #define UINT_MAX 0xffffffffU #define CHAR_BIT 8 diff --git a/include/linux/kernel.h b/include/linux/kernel.h index 9467edd65ab..569804f7264 100644 --- a/include/linux/kernel.h +++ b/include/linux/kernel.h @@ -16,18 +16,6 @@ #define LLONG_MIN (-LLONG_MAX - 1) #define ULLONG_MAX (~0ULL) -#define U8_MAX ((u8)~0U) -#define S8_MAX ((s8)(U8_MAX>>1)) -#define S8_MIN ((s8)(-S8_MAX - 1)) -#define U16_MAX ((u16)~0U) -#define S16_MAX ((s16)(U16_MAX>>1)) -#define S16_MIN ((s16)(-S16_MAX - 1)) -#define U32_MAX ((u32)~0U) -#define S32_MAX ((s32)(U32_MAX>>1)) -#define S32_MIN ((s32)(-S32_MAX - 1)) -#define U64_MAX ((u64)~0ULL) -#define S64_MAX ((s64)(U64_MAX>>1)) -#define S64_MIN ((s64)(-S64_MAX - 1)) #define INT32_MAX S32_MAX diff --git a/include/linux/limits.h b/include/linux/limits.h new file mode 100644 index 00000000000..0117bf7eea4 --- /dev/null +++ b/include/linux/limits.h @@ -0,0 +1,21 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +#ifndef _LINUX_LIMITS_H +#define _LINUX_LIMITS_H + +#include <linux/types.h> + +#define U8_MAX ((u8)~0U) +#define S8_MAX ((s8)(U8_MAX >> 1)) +#define S8_MIN ((s8)(-S8_MAX - 1)) +#define U16_MAX ((u16)~0U) +#define S16_MAX ((s16)(U16_MAX >> 1)) +#define S16_MIN ((s16)(-S16_MAX - 1)) +#define U32_MAX ((u32)~0U) +#define U32_MIN ((u32)0) +#define S32_MAX ((s32)(U32_MAX >> 1)) +#define S32_MIN ((s32)(-S32_MAX - 1)) +#define U64_MAX ((u64)~0ULL) +#define S64_MAX ((s64)(U64_MAX >> 1)) +#define S64_MIN ((s64)(-S64_MAX - 1)) + +#endif /* _LINUX_LIMITS_H */ -- 2.43.0 base-commit: 5841e78ed6ebd31b26553003e880be378b232cd9 branch: sec2