selftests/mm: compaction_test: fix incorrect write of zero to nr_hugepages
authorDev Jain <dev.jain@arm.com>
Tue, 21 May 2024 07:43:57 +0000 (13:13 +0530)
committerAndrew Morton <akpm@linux-foundation.org>
Fri, 24 May 2024 18:55:06 +0000 (11:55 -0700)
Currently, the test tries to set nr_hugepages to zero, but that is not
actually done because the file offset is not reset after read().  Fix that
using lseek().

Link: https://lkml.kernel.org/r/20240521074358.675031-3-dev.jain@arm.com
Fixes: bd67d5c15cc1 ("Test compaction of mlocked memory")
Signed-off-by: Dev Jain <dev.jain@arm.com>
Cc: <stable@vger.kernel.org>
Cc: Anshuman Khandual <anshuman.khandual@arm.com>
Cc: Shuah Khan <shuah@kernel.org>
Cc: Sri Jayaramappa <sjayaram@akamai.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
tools/testing/selftests/mm/compaction_test.c

index 0b249a06a60b142047c45b278c4a3199fb5fde3d..5e9bd1da9370ca6942f18549ba7be4df99fede7f 100644 (file)
@@ -108,6 +108,8 @@ int check_compaction(unsigned long mem_free, unsigned long hugepage_size)
                goto close_fd;
        }
 
+       lseek(fd, 0, SEEK_SET);
+
        /* Start with the initial condition of 0 huge pages*/
        if (write(fd, "0", sizeof(char)) != sizeof(char)) {
                ksft_print_msg("Failed to write 0 to /proc/sys/vm/nr_hugepages: %s\n",