Hi,
On 2021/11/19 下午7:00, Arthur Marsh wrote:
Hi, when seeing what build issues there were in building the current Linux git head kernel using gcc-12, I came across:
CC mm/page_alloc.o
mm/page_alloc.c: In function ‘mem_init_print_info’:
mm/page_alloc.c:8173:27: error: comparison between two arrays [-Werror=array-compare]
8173 | if (start <= pos && pos < end && size > adj) \
| ^~
Are there any patches that address this?
Please give a try with the patch below:
From ca5ce459a256a4847fff96778e78ce1711e9e74b Mon Sep 17 00:00:00 2001
From: Xiongwei Song <sxwjean@xxxxxxxxx>
Date: Fri, 19 Nov 2021 22:19:59 +0800
Subject: [PATCH] mm: page_alloc: Fix building error on
-Werror=array-compare
CC mm/page_alloc.o
mm/page_alloc.c: In function ‘mem_init_print_info’:
mm/page_alloc.c:8173:27: error: comparison between two arrays
[-Werror=array-compare]
8173 | if (start <= pos && pos < end && size > adj) \
|
Reported-by: Arthur Marsh <arthur.marsh@xxxxxxxxxxxxxxxx>
Signed-off-by: Xiongwei Song <sxwjean@xxxxxxxxx>
---
mm/page_alloc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/mm/page_alloc.c b/mm/page_alloc.c
index c5952749ad40..8f304c3d0e19 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -8170,7 +8170,7 @@ void __init mem_init_print_info(void)
*/
#define adj_init_size(start, end, size, pos, adj) \
do { \
- if (start <= pos && pos < end && size > adj) \
+ if (&start[0] <= &pos[0] && &pos[0] < &end[0] && size > adj) \
size -= adj; \
} while (0)
--
Regards,
Xiongwei
Regards,
Arthur.