On Sat, Nov 08, 2025 at 09:48:29PM +0530, Ankit Khushwaha wrote:
Pointer arthemitic with 'void * addr' and 'ulong dest_alignment' triggers following warning:
mremap_test.c:1035:31: warning: pointer comparison always evaluates to false [-Wtautological-compare] 1035 | if (addr + c.dest_alignment < addr) { | ^
this warning is raised from clang version 20.1.8 (Fedora 20.1.8-4.fc42).
use 'void *tmp_addr' to do the pointer arthemitic.
Signed-off-by: Ankit Khushwaha ankitkhushwaha.linux@gmail.com
Changelog: v2:
- use 'void *tmp_addr' for pointer arthemitic instead of typecasting
'addr' to 'unsigned long long' as suggested by Andrew.
v1: https://lore.kernel.org/linux-kselftest/20251106104917.39890-1-ankitkhushwah...
tools/testing/selftests/mm/mremap_test.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/tools/testing/selftests/mm/mremap_test.c b/tools/testing/selftests/mm/mremap_test.c index a95c0663a011..308576437228 100644 --- a/tools/testing/selftests/mm/mremap_test.c +++ b/tools/testing/selftests/mm/mremap_test.c @@ -994,7 +994,7 @@ static void mremap_move_multi_invalid_vmas(FILE *maps_fp, unsigned long page_siz static long long remap_region(struct config c, unsigned int threshold_mb, char *rand_addr) {
- void *addr, *src_addr, *dest_addr, *dest_preamble_addr = NULL;
- void *addr, *tmp_addr, *src_addr, *dest_addr, *dest_preamble_addr = NULL; unsigned long long t, d; struct timespec t_start = {0, 0}, t_end = {0, 0}; long long start_ns, end_ns, align_mask, ret, offset;
@@ -1032,7 +1032,8 @@ static long long remap_region(struct config c, unsigned int threshold_mb, /* Don't destroy existing mappings unless expected to overlap */ while (!is_remap_region_valid(addr, c.region_size) && !c.overlapping) { /* Check for unsigned overflow */
if (addr + c.dest_alignment < addr) {
tmp_addr = addr + c.dest_alignment;
Nit: tmp_addr can be declared here.
Other than that
Acked-by: Mike Rapoport (Microsoft) rppt@kernel.org
if (tmp_addr < addr) { ksft_print_msg("Couldn't find a valid region to remap to\n"); ret = -1; goto clean_up_src;-- 2.51.1