The patch titled Subject: tools:mm: check mmap based on return values has been added to the -mm mm-unstable branch. Its filename is tools-mm-check-mmap-based-on-return-values.patch This patch will shortly appear at https://git.kernel.org/pub/scm/linux/kernel/git/akpm/25-new.git/tree/patches/tools-mm-check-mmap-based-on-return-values.patch This patch will later appear in the mm-unstable branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's *** Remember to use Documentation/process/submit-checklist.rst when testing your code *** The -mm tree is included into linux-next via the mm-everything branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm and is updated there every 2-3 working days ------------------------------------------------------ From: Yang Ruibin <11162571@xxxxxxxx> Subject: tools:mm: check mmap based on return values Date: Tue, 20 Aug 2024 23:50:03 -0400 To correctly detect whether mmap is successful, must use if (map_ptr == MAP_FAILED)to avoid incorrectly handling a valid mapping. Link: https://lkml.kernel.org/r/20240821035005.4423-1-11162571@xxxxxxxx Signed-off-by: Yang Ruibin <11162571@xxxxxxxx> Cc: Shuah Khan <shuah@xxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- tools/testing/selftests/mm/ksm_tests.c | 2 +- tools/testing/selftests/mm/madv_populate.c | 2 +- tools/testing/selftests/mm/soft-dirty.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) --- a/tools/testing/selftests/mm/ksm_tests.c~tools-mm-check-mmap-based-on-return-values +++ a/tools/testing/selftests/mm/ksm_tests.c @@ -201,7 +201,7 @@ static void *allocate_memory(void *ptr, { void *map_ptr = mmap(ptr, map_size, PROT_WRITE, mapping, -1, 0); - if (!map_ptr) { + if (map_ptr == MAP_FAILED) { perror("mmap"); return NULL; } --- a/tools/testing/selftests/mm/madv_populate.c~tools-mm-check-mmap-based-on-return-values +++ a/tools/testing/selftests/mm/madv_populate.c @@ -34,7 +34,7 @@ static void sense_support(void) addr = mmap(0, pagesize, PROT_READ | PROT_WRITE, MAP_ANONYMOUS | MAP_PRIVATE, 0, 0); - if (!addr) + if (addr == MAP_FAILED) ksft_exit_fail_msg("mmap failed\n"); ret = madvise(addr, pagesize, MADV_POPULATE_READ); --- a/tools/testing/selftests/mm/soft-dirty.c~tools-mm-check-mmap-based-on-return-values +++ a/tools/testing/selftests/mm/soft-dirty.c @@ -134,7 +134,7 @@ static void test_mprotect(int pagemap_fd if (anon) { map = mmap(NULL, pagesize, PROT_READ|PROT_WRITE, MAP_ANONYMOUS|MAP_PRIVATE, -1, 0); - if (!map) + if (map == MAP_FAILED) ksft_exit_fail_msg("anon mmap failed\n"); } else { test_fd = open(fname, O_RDWR | O_CREAT, 0664); _ Patches currently in -mm which might be from 11162571@xxxxxxxx are tools-mm-check-mmap-based-on-return-values.patch lib-fix-the-null-vs-is_err-bug-for-debugfs_create_dir.patch