summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorXiongwei Song <sxwjean@gmail.com>2022-01-14 14:07:24 -0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2022-04-27 13:53:45 +0200
commit69848f9488bc1088bcd9a73987dff8d2cb47a060 (patch)
treedf8617e7a948c822a370015230d71aa432922fe4
parent08ad7a770efacfecf903143f8de88d1e351a1f2d (diff)
downloadlinux-stable-69848f9488bc1088bcd9a73987dff8d2cb47a060.tar.gz
linux-stable-69848f9488bc1088bcd9a73987dff8d2cb47a060.tar.bz2
linux-stable-69848f9488bc1088bcd9a73987dff8d2cb47a060.zip
mm: page_alloc: fix building error on -Werror=array-compare
commit ca831f29f8f25c97182e726429b38c0802200c8f upstream. Arthur Marsh reported we would hit the error below when building kernel with gcc-12: 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) \ | In C++20, the comparision between arrays should be warned. Link: https://lkml.kernel.org/r/20211125130928.32465-1-sxwjean@me.com Signed-off-by: Xiongwei Song <sxwjean@gmail.com> Reported-by: Arthur Marsh <arthur.marsh@internode.on.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Cc: Khem Raj <raj.khem@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--mm/page_alloc.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/mm/page_alloc.c b/mm/page_alloc.c
index f022e0024e8d..f3418edb136b 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -7678,7 +7678,7 @@ void __init mem_init_print_info(const char *str)
*/
#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)