selftests/mm/uffd: rename nr_cpus -> nr_parallel
authorBrendan Jackman <jackmanb@google.com>
Tue, 11 Mar 2025 13:18:15 +0000 (13:18 +0000)
committerAndrew Morton <akpm@linux-foundation.org>
Mon, 17 Mar 2025 05:06:38 +0000 (22:06 -0700)
A later commit will bound this variable so it no longer necessarily
matches the number of CPUs.  Rename it appropriately.

Link: https://lkml.kernel.org/r/20250311-mm-selftests-v4-4-dec210a658f5@google.com
Signed-off-by: Brendan Jackman <jackmanb@google.com>
Reviewed-by: Dev Jain <dev.jain@arm.com>
Cc: Lorenzo Stoakes <lorenzo.stoakes@oracle.com>
Cc: Mateusz Guzik <mjguzik@gmail.com>
Cc: Shuah Khan <shuah@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
tools/testing/selftests/mm/uffd-common.c
tools/testing/selftests/mm/uffd-common.h
tools/testing/selftests/mm/uffd-stress.c
tools/testing/selftests/mm/uffd-unit-tests.c

index 5457a078690d344de659ce80bf430734dceea6a0..a37088a23ffefad47af97165611d7df02f58c5b0 100644 (file)
@@ -10,7 +10,7 @@
 #define BASE_PMD_ADDR ((void *)(1UL << 30))
 
 volatile bool test_uffdio_copy_eexist = true;
-unsigned long nr_cpus, nr_pages, nr_pages_per_cpu, page_size;
+unsigned long nr_parallel, nr_pages, nr_pages_per_cpu, page_size;
 char *area_src, *area_src_alias, *area_dst, *area_dst_alias, *area_remap;
 int uffd = -1, uffd_flags, finished, *pipefd, test_type;
 bool map_shared;
@@ -269,7 +269,7 @@ void uffd_test_ctx_clear(void)
        size_t i;
 
        if (pipefd) {
-               for (i = 0; i < nr_cpus * 2; ++i) {
+               for (i = 0; i < nr_parallel * 2; ++i) {
                        if (close(pipefd[i]))
                                err("close pipefd");
                }
@@ -365,10 +365,10 @@ int uffd_test_ctx_init(uint64_t features, const char **errmsg)
         */
        uffd_test_ops->release_pages(area_dst);
 
-       pipefd = malloc(sizeof(int) * nr_cpus * 2);
+       pipefd = malloc(sizeof(int) * nr_parallel * 2);
        if (!pipefd)
                err("pipefd");
-       for (cpu = 0; cpu < nr_cpus; cpu++)
+       for (cpu = 0; cpu < nr_parallel; cpu++)
                if (pipe2(&pipefd[cpu * 2], O_CLOEXEC | O_NONBLOCK))
                        err("pipe");
 
index a70ae10b5f6206daecc8e19ed3e3bbb388e265aa..7700cbfa397563d2f2bc82be45f96f2fc2032bbe 100644 (file)
@@ -98,7 +98,7 @@ struct uffd_test_case_ops {
 };
 typedef struct uffd_test_case_ops uffd_test_case_ops_t;
 
-extern unsigned long nr_cpus, nr_pages, nr_pages_per_cpu, page_size;
+extern unsigned long nr_parallel, nr_pages, nr_pages_per_cpu, page_size;
 extern char *area_src, *area_src_alias, *area_dst, *area_dst_alias, *area_remap;
 extern int uffd, uffd_flags, finished, *pipefd, test_type;
 extern bool map_shared;
index 91174e9425cde2500b459db78cb27adda6647b55..d6b57e5a2e1d7611aa1588ee41601ce16117a574 100644 (file)
@@ -180,12 +180,12 @@ static void *background_thread(void *arg)
 static int stress(struct uffd_args *args)
 {
        unsigned long cpu;
-       pthread_t locking_threads[nr_cpus];
-       pthread_t uffd_threads[nr_cpus];
-       pthread_t background_threads[nr_cpus];
+       pthread_t locking_threads[nr_parallel];
+       pthread_t uffd_threads[nr_parallel];
+       pthread_t background_threads[nr_parallel];
 
        finished = 0;
-       for (cpu = 0; cpu < nr_cpus; cpu++) {
+       for (cpu = 0; cpu < nr_parallel; cpu++) {
                if (pthread_create(&locking_threads[cpu], &attr,
                                   locking_thread, (void *)cpu))
                        return 1;
@@ -203,7 +203,7 @@ static int stress(struct uffd_args *args)
                                   background_thread, (void *)cpu))
                        return 1;
        }
-       for (cpu = 0; cpu < nr_cpus; cpu++)
+       for (cpu = 0; cpu < nr_parallel; cpu++)
                if (pthread_join(background_threads[cpu], NULL))
                        return 1;
 
@@ -219,11 +219,11 @@ static int stress(struct uffd_args *args)
        uffd_test_ops->release_pages(area_src);
 
        finished = 1;
-       for (cpu = 0; cpu < nr_cpus; cpu++)
+       for (cpu = 0; cpu < nr_parallel; cpu++)
                if (pthread_join(locking_threads[cpu], NULL))
                        return 1;
 
-       for (cpu = 0; cpu < nr_cpus; cpu++) {
+       for (cpu = 0; cpu < nr_parallel; cpu++) {
                char c;
                if (bounces & BOUNCE_POLL) {
                        if (write(pipefd[cpu*2+1], &c, 1) != 1)
@@ -246,11 +246,11 @@ static int userfaultfd_stress(void)
 {
        void *area;
        unsigned long nr;
-       struct uffd_args args[nr_cpus];
+       struct uffd_args args[nr_parallel];
        uint64_t mem_size = nr_pages * page_size;
        int flags = 0;
 
-       memset(args, 0, sizeof(struct uffd_args) * nr_cpus);
+       memset(args, 0, sizeof(struct uffd_args) * nr_parallel);
 
        if (features & UFFD_FEATURE_WP_UNPOPULATED && test_type == TEST_ANON)
                flags = UFFD_FEATURE_WP_UNPOPULATED;
@@ -325,7 +325,7 @@ static int userfaultfd_stress(void)
                 */
                uffd_test_ops->release_pages(area_dst);
 
-               uffd_stats_reset(args, nr_cpus);
+               uffd_stats_reset(args, nr_parallel);
 
                /* bounce pass */
                if (stress(args)) {
@@ -359,7 +359,7 @@ static int userfaultfd_stress(void)
 
                swap(area_src_alias, area_dst_alias);
 
-               uffd_stats_report(args, nr_cpus);
+               uffd_stats_report(args, nr_parallel);
        }
        uffd_test_ctx_clear();
 
@@ -453,9 +453,9 @@ int main(int argc, char **argv)
                return KSFT_SKIP;
        }
 
-       nr_cpus = sysconf(_SC_NPROCESSORS_ONLN);
+       nr_parallel = sysconf(_SC_NPROCESSORS_ONLN);
 
-       nr_pages_per_cpu = bytes / page_size / nr_cpus;
+       nr_pages_per_cpu = bytes / page_size / nr_parallel;
        if (!nr_pages_per_cpu) {
                _err("invalid MiB");
                usage();
@@ -466,7 +466,7 @@ int main(int argc, char **argv)
                _err("invalid bounces");
                usage();
        }
-       nr_pages = nr_pages_per_cpu * nr_cpus;
+       nr_pages = nr_pages_per_cpu * nr_parallel;
 
        printf("nr_pages: %lu, nr_pages_per_cpu: %lu\n",
               nr_pages, nr_pages_per_cpu);
index 74c8bc02b5063f4667c4284c432edc7dee7ba3a5..24ea82ee223184612781adc852460138c4fe28f0 100644 (file)
@@ -198,7 +198,7 @@ uffd_setup_environment(uffd_test_args_t *args, uffd_test_case_t *test,
 
        nr_pages = UFFD_TEST_MEM_SIZE / page_size;
        /* TODO: remove this global var.. it's so ugly */
-       nr_cpus = 1;
+       nr_parallel = 1;
 
        /* Initialize test arguments */
        args->mem_type = mem_type;