From patchwork Tue Mar 11 13:18:15 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Brendan Jackman X-Patchwork-Id: 14011866 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 48444C28B2E for ; Tue, 11 Mar 2025 13:18:33 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 871BC280007; Tue, 11 Mar 2025 09:18:29 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 7D15D280001; Tue, 11 Mar 2025 09:18:29 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 5FED7280007; Tue, 11 Mar 2025 09:18:29 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 27620280001 for ; Tue, 11 Mar 2025 09:18:29 -0400 (EDT) Received: from smtpin12.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 5116DBA8CE for ; Tue, 11 Mar 2025 13:18:29 +0000 (UTC) X-FDA: 83209324338.12.B3D2695 Received: from mail-wm1-f73.google.com (mail-wm1-f73.google.com [209.85.128.73]) by imf06.hostedemail.com (Postfix) with ESMTP id 72365180003 for ; Tue, 11 Mar 2025 13:18:27 +0000 (UTC) Authentication-Results: imf06.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b="RknN/V8C"; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf06.hostedemail.com: domain of 3IjjQZwgKCBk8z19BzC05DD5A3.1DBA7CJM-BB9Kz19.DG5@flex--jackmanb.bounces.google.com designates 209.85.128.73 as permitted sender) smtp.mailfrom=3IjjQZwgKCBk8z19BzC05DD5A3.1DBA7CJM-BB9Kz19.DG5@flex--jackmanb.bounces.google.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1741699107; a=rsa-sha256; cv=none; b=Zbwxf7WpFg3iRb5gkmBMyCNzanJuHcizkMkHbd96IPcywwjQ4QqR2q/5LSeCF7lAtgfuXo PDcpc0e5Sopy7wV/epb+0GxKIxcZy118wO2Vf8IOH1gRZy04su3CILZkkzlvsrgeFPsLsC 9rjeYPdpjmewKFOMFNHace42OZXT+B0= ARC-Authentication-Results: i=1; imf06.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b="RknN/V8C"; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf06.hostedemail.com: domain of 3IjjQZwgKCBk8z19BzC05DD5A3.1DBA7CJM-BB9Kz19.DG5@flex--jackmanb.bounces.google.com designates 209.85.128.73 as permitted sender) smtp.mailfrom=3IjjQZwgKCBk8z19BzC05DD5A3.1DBA7CJM-BB9Kz19.DG5@flex--jackmanb.bounces.google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1741699107; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=5QUtJ68S5WVMBdPVxDoGekz8XvAVXh0h8UUq5TqoFAw=; b=vnXj5HIGNLtilj3Uxcu1pER5i8Zt8ogMQTqquoudRXLQ4gNwGHswTxslYBpqsZmjzSUH2e p4MjRGW360+RVxXBqKTf+0WGwnTleG6oKQ6tdrDB6XLLRbR3ogq7Hlcwo2ts4rWf+q8/HE PrPCVL+KCvm6xMcvWERqIpWdMDqlr7o= Received: by mail-wm1-f73.google.com with SMTP id 5b1f17b1804b1-43cf172ffe1so21726935e9.3 for ; Tue, 11 Mar 2025 06:18:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1741699106; x=1742303906; darn=kvack.org; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=5QUtJ68S5WVMBdPVxDoGekz8XvAVXh0h8UUq5TqoFAw=; b=RknN/V8Cydw80C8a62jtBl1nYU9G257qp3ORe91LnoB49usGSCvizLiJHXV5hR72I6 cviAYYCLgbOzDehu9cPEM/cFByk0IPf80eC2Xtw0qF+xC8kaRXMWHU7fGoIJFZrV3MFX s/MUUG3C4qN6kApD5E+q7qUnIBjIXkXdhhkHq/QeSiUknA2cRm0CiGYa935mrvRqglP3 8N9v9FQpLje0hXyrx9M+GbWjZ8i+4zxA7NQy+SwrUggtwvJH+qhEugl48W0XexGW7rdj zLvkUryEFDBD72m+JBiIpdC0a1O7ni7jJGf7g3ITuliZ/L+oNrMrMtT7E0JJDW5Jchyq ORnA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741699106; x=1742303906; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=5QUtJ68S5WVMBdPVxDoGekz8XvAVXh0h8UUq5TqoFAw=; b=mejoLnGU0vhAEDXAHTvMETgAaFncl5AsReo/i2VrFSVB/EGJ+uKSEgnYCTyZYM8LPr BC9hJqk8x+0R2u4AycgXJQj+sCozzRgSobqaVEINH4ohfu5gRAOGy8++ArcH9Omv+J0s hQBx9rqQ4NqXFO7MWVktmkOpbBDDd8mrdeHcjnShEuRT87ffdJm1KSgT/oPo3wEYfbMJ 1m/1H18ATQAfehvJnN0MnREXZMNlE3Lk41l0Xej+oEDccY+el5oZG99tQtTZF17fhPVc vZBTYydZ22xA9RNsA1oHKJdIrkTihVbA++x2doVro7A/BlvdMXV5RcS7TUC2PtQI+TXP xrhA== X-Forwarded-Encrypted: i=1; AJvYcCWyyd67ofrGjWfh+oRLOivP+JlGe7FRL4nV7SqCpbGErcs+VzbhQIVlfeOfftWdbNL2qU/lvuLOgg==@kvack.org X-Gm-Message-State: AOJu0YwkyA7vuXS7luizRnpckmxwij71OJuDUsncIBIAbpr/CrWAmnST gLalAqSCSTkDwXwjHD/Njxtv8nyjqFoCy8u0VQmWiRZ5AhUiLex8qg3PpX43sjpaOAGPsNjGCg4 8OLR2zlbFKg== X-Google-Smtp-Source: AGHT+IHToyTOs3PPNxoBJUiCtaIlgO3ErHmKsYxSiQO/bRF9eUGsPTje1OCUomarBDaBQGTLwh5n+zuKNOR9zw== X-Received: from wmbet7.prod.google.com ([2002:a05:600c:8187:b0:43c:fad4:7595]) (user=jackmanb job=prod-delivery.src-stubby-dispatcher) by 2002:a05:600c:3554:b0:43c:fffc:787b with SMTP id 5b1f17b1804b1-43cfffc7b0fmr77724175e9.12.1741699106174; Tue, 11 Mar 2025 06:18:26 -0700 (PDT) Date: Tue, 11 Mar 2025 13:18:15 +0000 In-Reply-To: <20250311-mm-selftests-v4-0-dec210a658f5@google.com> Mime-Version: 1.0 References: <20250311-mm-selftests-v4-0-dec210a658f5@google.com> X-Mailer: b4 0.14.2 Message-ID: <20250311-mm-selftests-v4-4-dec210a658f5@google.com> Subject: [PATCH v4 04/12] selftests/mm/uffd: Rename nr_cpus -> nr_parallel From: Brendan Jackman To: Lorenzo Stoakes , Andrew Morton , Shuah Khan Cc: Dev Jain , linux-mm@kvack.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, Brendan Jackman X-Rspamd-Queue-Id: 72365180003 X-Stat-Signature: ctwo8xewgdsr5mrssn43jcph8z65sbor X-Rspamd-Server: rspam02 X-Rspam-User: X-HE-Tag: 1741699107-610318 X-HE-Meta: U2FsdGVkX189BvXIQkvshvJ0maje3R0IB6NPKDp8YWceyiHKlC4jjDvn3VXJbht3RQj+DSNOG/8P/PYsErfMczutQxf30Mcewpa+8ivwx+7quHi9UdnpTD5TkcaqllYP41I/QpD5k7yWFXwRMQF/xUwmuFgjNDBJRNneNN+cB/uELmIkZYm8lUvnrVVnrSIP3j6Br48kR7hkZBQAb2wJq9oltx63901zqIbrqvjDjCDBQkBzRCPSfCvYeVayoECTvWhkvXLXsAx8l/4JLRjx6XPKh7n9mR6Gcidq3ovm0iEYt2LVUsMfsrvb8VpLOhn9IkH3sqWZIzZPAp6haUdWvVxo/fU5xRccBJuNhXVCteJafjzMhuxXkIgLQlUTq/oYXairIaZf3b9VUNEHjXokfxkhA9PrwAyuks0HU65hvnnGkabdK3gvUjMwyCgnYsutDGbbUASotDxwsQ6ug5O5lrEyvTpKXdPQMLRCZyAxofQ+oxJuWHqkz3a/FYIBtdmYyhKurkIn15F8k9tIYZDzrSulMEQGNfzLrXFrfr/+T84ejor4wd6uF63obWRyBBAkN7YyH6XCmf/LGUEnXDwMBX518qDeN3sGcLE5o9lXzSXeQIHQcucnspP5hEjwr+QGkdrcIz16aaAiedXiXV6ztt71Xqua0p4cV1Tj5dRiIeBFm+nzajHLq9uS20KO8aj/rQ5hIiYZnia/3v9n5BV2HuGD0TcDJSwGnkbByOLEm1zObwvW8CcSscf0BinIa6oitVs0eXYH51FpPXBmdtMC9k7vL/BuoQHtxUn7CF6A6fYWdf5GtzWSMeVzbiSO5aEdT2N3OSjS4PvMdniJ8uZOvTv596+3Ck9rziSAThSoKXDqABL1j4Z5obiP75bCWZEaTCxOj9CSZwUZhWjCbUSWx1sUe58JylLnODkm9MxGGqXZBd/K1tVq86+BIG6Y2r/14gOopOuAP2ftN+MjM3b 6pSOIi0p SzCdSzNJOY8E4m1GexdxX60YaptPd1QwGooCE1iSLGFjeoE00PaHA6e9yZ1KX9QB1qKbi3/6ntB5++pb+lDXTYCAoePWfz+KRbA+jghPrG72qSj5AVCP4dm/gDnbnv9EvIAearppxmUspbZMuP46K6FfHMUUezDRdUwpz9gCQ/sO21fp392l5eSGh1rSGqHB74gGifvZJMV4yoCcZggxSvG0dknKd3NPtJZYT39ZBdRwsJHlTtlP6dTg8A9tJAsxDqyRvq69WAwIYmobWQUkFFXa1Kgq3u8Bsw9UcCIfArM87UQ3GtCXcfzS66xOEELEYz4IBT1XjzB85Qyk/tCP4+OaPjA9ZnrtORlcc72Fn2DedPuYjplSrNcKaZenpdghybTpq5UXKdgLh4dyZHQSdfBWeyAJ3aLvI4i5Q05TSQl6kMCy/Yu5l27vUcNRGY8uhD8wbGl2qv3TI09QV9mLwxZVmt4bmgau1Nnxs7IwSAmJVyXsUpaiL0k2py0ztVkVh+zrmr/TiMWAuswkrnJEV1LVzxCCcDIBrkrwO1YqR1wYD//Y8DJK455LxnwSeZ695tpNmc0neRX10HCHeHJjkvcgC+jtd6anCs0ANgWT5fMtSLLEQIZZLcjOmkNCgh/XZ6WvigHKEnakbe0/ResFQfukBurAbm467HUTr X-Bogosity: Ham, tests=bogofilter, spamicity=0.000001, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: A later commit will bound this variable so it no longer necessarily matches the number of CPUs. Rename it appropriately. Reviewed-by: Dev Jain Signed-off-by: Brendan Jackman --- tools/testing/selftests/mm/uffd-common.c | 8 ++++---- tools/testing/selftests/mm/uffd-common.h | 2 +- tools/testing/selftests/mm/uffd-stress.c | 28 ++++++++++++++-------------- tools/testing/selftests/mm/uffd-unit-tests.c | 2 +- 4 files changed, 20 insertions(+), 20 deletions(-) diff --git a/tools/testing/selftests/mm/uffd-common.c b/tools/testing/selftests/mm/uffd-common.c index 7ad6ba660c7d6f1f5762d0b231b92b05e971a3c5..dd01d2c95175b0329a75e220d2f43c915261090c 100644 --- a/tools/testing/selftests/mm/uffd-common.c +++ b/tools/testing/selftests/mm/uffd-common.c @@ -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"); diff --git a/tools/testing/selftests/mm/uffd-common.h b/tools/testing/selftests/mm/uffd-common.h index a70ae10b5f6206daecc8e19ed3e3bbb388e265aa..7700cbfa397563d2f2bc82be45f96f2fc2032bbe 100644 --- a/tools/testing/selftests/mm/uffd-common.h +++ b/tools/testing/selftests/mm/uffd-common.h @@ -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; diff --git a/tools/testing/selftests/mm/uffd-stress.c b/tools/testing/selftests/mm/uffd-stress.c index 91174e9425cde2500b459db78cb27adda6647b55..d6b57e5a2e1d7611aa1588ee41601ce16117a574 100644 --- a/tools/testing/selftests/mm/uffd-stress.c +++ b/tools/testing/selftests/mm/uffd-stress.c @@ -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); diff --git a/tools/testing/selftests/mm/uffd-unit-tests.c b/tools/testing/selftests/mm/uffd-unit-tests.c index 74c8bc02b5063f4667c4284c432edc7dee7ba3a5..24ea82ee223184612781adc852460138c4fe28f0 100644 --- a/tools/testing/selftests/mm/uffd-unit-tests.c +++ b/tools/testing/selftests/mm/uffd-unit-tests.c @@ -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;