In the test mremap_move_multiple_vmas(), pages 4 to 6 form a single VMA. But the helper function is_multiple_vma_range_ok() checks pages 4 and 5 as one range and treats page 6 separately. Check all three pages as a single range and skip the page 6 iteration to match the actual VMA layout. Fixes: d53f248258e1 ("tools/testing/selftests: extend mremap_test to test multi-VMA mremap") Signed-off-by: Sarthak Sharma --- tools/testing/selftests/mm/mremap_test.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/tools/testing/selftests/mm/mremap_test.c b/tools/testing/selftests/mm/mremap_test.c index ba9b7f7566d0..869df22d46db 100644 --- a/tools/testing/selftests/mm/mremap_test.c +++ b/tools/testing/selftests/mm/mremap_test.c @@ -373,7 +373,10 @@ static bool is_multiple_vma_range_ok(unsigned int pattern_seed, for (i = 0; i <= 10; i += 2) { int j; char *buf = &ptr[i * page_size]; - size_t size = i == 4 ? 2 * page_size : page_size; + size_t size = i == 4 ? 3 * page_size : page_size; + + if (i == 6) + continue; for (j = 0; j < size; j++) { char chr = rand(); -- 2.53.0