From nobody Mon Apr 6 18:06:08 2026 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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 51C0BC4332F for ; Fri, 14 Oct 2022 14:39:37 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229978AbiJNOjf (ORCPT ); Fri, 14 Oct 2022 10:39:35 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:59304 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229863AbiJNOj1 (ORCPT ); Fri, 14 Oct 2022 10:39:27 -0400 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 044DD1D4DE7 for ; Fri, 14 Oct 2022 07:39:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1665758366; h=from:from: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:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=CEy7pKIEsfMMFzj4vyOzQVpkWI0TxrmvN3NLo9J44z8=; b=iepYJhttJwhqIGc6BDa2CKrYQKQSHTWGZcrN9v8IMO6Ngab5cIWXky27aNI4NmuNNYOSci bSf0nvG2q5zt0ych081OKFa68KQDieNsDiLXthPTHCB/NucxMfOIHcV3Sl6Zq5Ytq5HSPf 9cUoITp/c97tRaOiwJktQ35/6tRlOYs= Received: from mail-qk1-f198.google.com (mail-qk1-f198.google.com [209.85.222.198]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-622-l_ER5CKYNmuc7kbrvHuT5A-1; Fri, 14 Oct 2022 10:39:25 -0400 X-MC-Unique: l_ER5CKYNmuc7kbrvHuT5A-1 Received: by mail-qk1-f198.google.com with SMTP id j13-20020a05620a288d00b006be7b2a758fso3580147qkp.1 for ; Fri, 14 Oct 2022 07:39:25 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=CEy7pKIEsfMMFzj4vyOzQVpkWI0TxrmvN3NLo9J44z8=; b=kyIQlijkbsz/HvzKAO59f5AwgWjTywJg4zXdJ4Z6JcQzqEcCl33jfDuXR1B1qnJCQy 5FU82tFQ6AulAfzojEbXKVOeRTmzm+PEwmbFK/taI7IenBp6gXibynNzGrbVrw9by02W vurin6GwOpYtRDrN8LbmX7SqNPchLmHdQx68RvyVr2XW2L4ghsrFnmzHVXyIerKlYPqR r6lZXNK64RJG3Ef+wkvWQITNsDk/azjxl20fZ0VIDZpgPH4IM+h0JjwCZTDiJWaGbzj+ 31Nk4+It7OxynBP4R4rVo2Z4jbdQ4h0XnO3ou2f1LP8yvy+Nwn4OmYkDIv8CjqLJrxBq F6Cw== X-Gm-Message-State: ACrzQf0yI6jITXJsZeR+UjxR9n6ivlrcJQOaql6vShcFEv/24p2snBsY n7njwdIJwq244B/7Ty/km44PlpnjwZuLVD+VyqxySVmmwDY1hu89TmoQoWZeWE5hs53DFwTK3mL nEWbFxdrDP4dHcMQ9MnzQyvSCKn4gwnp4dJevH94a97cnYlQ08L2ZcogE0LJvZAhhJdp+Kt7Y1w == X-Received: by 2002:a05:6214:500f:b0:4b1:d2b1:54c with SMTP id jo15-20020a056214500f00b004b1d2b1054cmr4236938qvb.54.1665758364406; Fri, 14 Oct 2022 07:39:24 -0700 (PDT) X-Google-Smtp-Source: AMsMyM5hcHtcB11MKZ36Ka9jJq2b9wUzusa/zVJ0ne6bkmpItRnjhCW0Ngl0EeWdKQA1NKrIZ/bLuw== X-Received: by 2002:a05:6214:500f:b0:4b1:d2b1:54c with SMTP id jo15-20020a056214500f00b004b1d2b1054cmr4236905qvb.54.1665758364028; Fri, 14 Oct 2022 07:39:24 -0700 (PDT) Received: from x1n.redhat.com (bras-base-aurron9127w-grc-46-70-31-27-79.dsl.bell.ca. [70.31.27.79]) by smtp.gmail.com with ESMTPSA id q4-20020a05620a2a4400b006ec09d7d357sm2675541qkp.47.2022.10.14.07.39.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 14 Oct 2022 07:39:23 -0700 (PDT) From: Peter Xu To: linux-kernel@vger.kernel.org, linux-mm@kvack.org Cc: Axel Rasmussen , Andrew Morton , peterx@redhat.com, Mike Kravetz Subject: [PATCH v2 1/4] selftests/vm: Use memfd for uffd hugetlb tests Date: Fri, 14 Oct 2022 10:39:18 -0400 Message-Id: <20221014143921.93887-2-peterx@redhat.com> X-Mailer: git-send-email 2.37.3 In-Reply-To: <20221014143921.93887-1-peterx@redhat.com> References: <20221014143921.93887-1-peterx@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" We already used memfd for shmem test, move it forward with hugetlb too so that we don't need user to specify the hugetlb file path explicitly when running hugetlb shared tests. Reviewed-by: Axel Rasmussen Signed-off-by: Peter Xu --- tools/testing/selftests/vm/userfaultfd.c | 62 ++++++++---------------- 1 file changed, 21 insertions(+), 41 deletions(-) diff --git a/tools/testing/selftests/vm/userfaultfd.c b/tools/testing/selft= ests/vm/userfaultfd.c index 74babdbc02e5..58f70d81e630 100644 --- a/tools/testing/selftests/vm/userfaultfd.c +++ b/tools/testing/selftests/vm/userfaultfd.c @@ -93,10 +93,8 @@ static volatile bool test_uffdio_zeropage_eexist =3D tru= e; static bool test_uffdio_wp =3D true; /* Whether to test uffd minor faults */ static bool test_uffdio_minor =3D false; - static bool map_shared; -static int shm_fd; -static int huge_fd; +static int mem_fd; static unsigned long long *count_verify; static int uffd =3D -1; static int uffd_flags, finished, *pipefd; @@ -143,7 +141,7 @@ const char *examples =3D "# Run hugetlb memory test on 256MiB region with 50 bounces:\n" "./userfaultfd hugetlb 256 50\n\n" "# Run the same hugetlb test but using shared file:\n" - "./userfaultfd hugetlb_shared 256 50 /dev/hugepages/hugefile\n\n" + "./userfaultfd hugetlb_shared 256 50\n\n" "# 10MiB-~6GiB 999 bounces anonymous test, " "continue forever unless an error triggers\n" "while ./userfaultfd anon $[RANDOM % 6000 + 10] 999; do true; done\n\n= "; @@ -260,35 +258,21 @@ static void hugetlb_release_pages(char *rel_area) =20 static void hugetlb_allocate_area(void **alloc_area, bool is_src) { + off_t size =3D nr_pages * page_size; + off_t offset =3D is_src ? 0 : size; void *area_alias =3D NULL; char **alloc_area_alias; =20 - if (!map_shared) - *alloc_area =3D mmap(NULL, - nr_pages * page_size, - PROT_READ | PROT_WRITE, - MAP_PRIVATE | MAP_ANONYMOUS | MAP_HUGETLB | - (is_src ? 0 : MAP_NORESERVE), - -1, - 0); - else - *alloc_area =3D mmap(NULL, - nr_pages * page_size, - PROT_READ | PROT_WRITE, - MAP_SHARED | - (is_src ? 0 : MAP_NORESERVE), - huge_fd, - is_src ? 0 : nr_pages * page_size); + *alloc_area =3D mmap(NULL, size, PROT_READ | PROT_WRITE, + (map_shared ? MAP_SHARED : MAP_PRIVATE) | + (is_src ? 0 : MAP_NORESERVE), + mem_fd, offset); if (*alloc_area =3D=3D MAP_FAILED) err("mmap of hugetlbfs file failed"); =20 if (map_shared) { - area_alias =3D mmap(NULL, - nr_pages * page_size, - PROT_READ | PROT_WRITE, - MAP_SHARED, - huge_fd, - is_src ? 0 : nr_pages * page_size); + area_alias =3D mmap(NULL, size, PROT_READ | PROT_WRITE, + MAP_SHARED, mem_fd, offset); if (area_alias =3D=3D MAP_FAILED) err("mmap of hugetlb file alias failed"); } @@ -334,14 +318,14 @@ static void shmem_allocate_area(void **alloc_area, bo= ol is_src) } =20 *alloc_area =3D mmap(p, bytes, PROT_READ | PROT_WRITE, MAP_SHARED, - shm_fd, offset); + mem_fd, offset); if (*alloc_area =3D=3D MAP_FAILED) err("mmap of memfd failed"); if (test_collapse && *alloc_area !=3D p) err("mmap of memfd failed at %p", p); =20 area_alias =3D mmap(p_alias, bytes, PROT_READ | PROT_WRITE, MAP_SHARED, - shm_fd, offset); + mem_fd, offset); if (area_alias =3D=3D MAP_FAILED) err("mmap of memfd alias failed"); if (test_collapse && area_alias !=3D p_alias) @@ -1821,21 +1805,17 @@ int main(int argc, char **argv) } nr_pages =3D nr_pages_per_cpu * nr_cpus; =20 - if (test_type =3D=3D TEST_HUGETLB && map_shared) { - if (argc < 5) - usage(); - huge_fd =3D open(argv[4], O_CREAT | O_RDWR, 0755); - if (huge_fd < 0) - err("Open of %s failed", argv[4]); - if (ftruncate(huge_fd, 0)) - err("ftruncate %s to size 0 failed", argv[4]); - } else if (test_type =3D=3D TEST_SHMEM) { - shm_fd =3D memfd_create(argv[0], 0); - if (shm_fd < 0) + if (test_type =3D=3D TEST_SHMEM || test_type =3D=3D TEST_HUGETLB) { + unsigned int memfd_flags =3D 0; + + if (test_type =3D=3D TEST_HUGETLB) + memfd_flags =3D MFD_HUGETLB; + mem_fd =3D memfd_create(argv[0], memfd_flags); + if (mem_fd < 0) err("memfd_create"); - if (ftruncate(shm_fd, nr_pages * page_size * 2)) + if (ftruncate(mem_fd, nr_pages * page_size * 2)) err("ftruncate"); - if (fallocate(shm_fd, + if (fallocate(mem_fd, FALLOC_FL_PUNCH_HOLE | FALLOC_FL_KEEP_SIZE, 0, nr_pages * page_size * 2)) err("fallocate"); --=20 2.37.3 From nobody Mon Apr 6 18:06:08 2026 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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id B6F82C4332F for ; Fri, 14 Oct 2022 14:39:42 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230160AbiJNOjj (ORCPT ); Fri, 14 Oct 2022 10:39:39 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:59310 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229920AbiJNOj3 (ORCPT ); Fri, 14 Oct 2022 10:39:29 -0400 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 6A61B1D4DE7 for ; Fri, 14 Oct 2022 07:39:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1665758367; h=from:from: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:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=zhrtCe5O8iJscoLdf85Accar6WxcllS+eYr7bBy1HkM=; b=gtdPCQsofa7kHijNmmurBxhr/APJhIXVcNkZGAICAgJzsqN8S/KYZw8zO/ZVAZh19ZVc0H NeMb4fZxaw3zIiKsAZkrtL62b+FEnrh+/YSzx77cKfwLqSZoywohaqXv6peouxWspVaxEs qJ6aF9gJul5lj9NBGKPAXkANnUTjDNE= Received: from mail-qk1-f197.google.com (mail-qk1-f197.google.com [209.85.222.197]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-339-p1WeIEz_M_CFSrXw6Tm80g-1; Fri, 14 Oct 2022 10:39:26 -0400 X-MC-Unique: p1WeIEz_M_CFSrXw6Tm80g-1 Received: by mail-qk1-f197.google.com with SMTP id az32-20020a05620a172000b006ee8ae138a7so3594407qkb.4 for ; Fri, 14 Oct 2022 07:39:26 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=zhrtCe5O8iJscoLdf85Accar6WxcllS+eYr7bBy1HkM=; b=g4VKWBHrZvqNyr2VGAzGCLM7kL+U6/eLN8CQ9BXeT67l2RRgg1SUE+HY9GffFf8Iue DHwowud44HkwRdlsBbtQsw0SE7HBYUMObE+uTA1sKMTp4jDlclYNplZqWDpoZ4IrO2kB H0VmPOltvQJp2AntD9mFzG5+EgFwgJ7GZOudhCh4V9C1/KrKxDB5lHZcuTu80JEeXPIg M5Xs8TQVzl2hrFpDgSDwx+hHwKAguHnwIHkOLlye8qt0HkeJlVxD4uOo6m44Xb4g993n 295+kUeDBgDj5h0Q+kvMcgrBsjZQlaI6S8CfzVuaoAqYDDTGN2E2a8+DZH7/rA2KuCGB mD1g== X-Gm-Message-State: ACrzQf1zz+88uePPogAIUi7yBcAl98fyRRrgGM/hLsFSMvJ5yP7CqHoS SetPN0lATx49BRB9NIIKJoUkelC0iJ9XdDngouXyxKL2xOMCcpskEJitaoL7v/7MMMgXZ8xIX+J w6z/1dfS2OwLKkiD41cxrXVMbQ/wDeqTf54+WjN3PhqY/wgIfs/XvdLHKgEUAEL5Q3k+IuxgZiQ == X-Received: by 2002:a05:620a:4487:b0:6ee:bcfd:bd38 with SMTP id x7-20020a05620a448700b006eebcfdbd38mr3958894qkp.468.1665758365599; Fri, 14 Oct 2022 07:39:25 -0700 (PDT) X-Google-Smtp-Source: AMsMyM4Sm2N0MTTyvS+djMYYsPheIDh6qYStLP75xZfMOIeKo1yJ56X446Gqke44gOKPwhPm9ANfZA== X-Received: by 2002:a05:620a:4487:b0:6ee:bcfd:bd38 with SMTP id x7-20020a05620a448700b006eebcfdbd38mr3958866qkp.468.1665758365343; Fri, 14 Oct 2022 07:39:25 -0700 (PDT) Received: from x1n.redhat.com (bras-base-aurron9127w-grc-46-70-31-27-79.dsl.bell.ca. [70.31.27.79]) by smtp.gmail.com with ESMTPSA id q4-20020a05620a2a4400b006ec09d7d357sm2675541qkp.47.2022.10.14.07.39.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 14 Oct 2022 07:39:24 -0700 (PDT) From: Peter Xu To: linux-kernel@vger.kernel.org, linux-mm@kvack.org Cc: Axel Rasmussen , Andrew Morton , peterx@redhat.com, Mike Kravetz Subject: [PATCH v2 2/4] selftests/vm: Use memfd for hugetlb-madvise test Date: Fri, 14 Oct 2022 10:39:19 -0400 Message-Id: <20221014143921.93887-3-peterx@redhat.com> X-Mailer: git-send-email 2.37.3 In-Reply-To: <20221014143921.93887-1-peterx@redhat.com> References: <20221014143921.93887-1-peterx@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" For dropping the hugetlb mountpoint in run_vmtests.sh. Since no parameter is needed, drop USAGE too. Signed-off-by: Peter Xu --- tools/testing/selftests/vm/hugetlb-madvise.c | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/tools/testing/selftests/vm/hugetlb-madvise.c b/tools/testing/s= elftests/vm/hugetlb-madvise.c index 3c9943131881..f96435b70986 100644 --- a/tools/testing/selftests/vm/hugetlb-madvise.c +++ b/tools/testing/selftests/vm/hugetlb-madvise.c @@ -12,6 +12,7 @@ * directory. */ =20 +#define _GNU_SOURCE #include #include #include @@ -19,7 +20,6 @@ #define __USE_GNU #include =20 -#define USAGE "USAGE: %s \n" #define MIN_FREE_PAGES 20 #define NR_HUGE_PAGES 10 /* common number of pages to map/allocate */ =20 @@ -103,11 +103,6 @@ int main(int argc, char **argv) int fd; int ret; =20 - if (argc !=3D 2) { - printf(USAGE, argv[0]); - exit(1); - } - huge_page_size =3D default_huge_page_size(); if (!huge_page_size) { printf("Unable to determine huge page size, exiting!\n"); @@ -125,9 +120,9 @@ int main(int argc, char **argv) exit(1); } =20 - fd =3D open(argv[1], O_CREAT | O_RDWR, 0755); + fd =3D memfd_create(argv[0], MFD_HUGETLB); if (fd < 0) { - perror("Open failed"); + perror("memfd_create() failed"); exit(1); } =20 @@ -406,6 +401,5 @@ int main(int argc, char **argv) (void)munmap(addr2, NR_HUGE_PAGES * huge_page_size); =20 close(fd); - unlink(argv[1]); return 0; } --=20 2.37.3 From nobody Mon Apr 6 18:06:08 2026 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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id B87EAC4332F for ; Fri, 14 Oct 2022 14:40:34 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230367AbiJNOkc (ORCPT ); Fri, 14 Oct 2022 10:40:32 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:35466 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230178AbiJNOkT (ORCPT ); Fri, 14 Oct 2022 10:40:19 -0400 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 3E2C950BB7 for ; Fri, 14 Oct 2022 07:40:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1665758417; h=from:from: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:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=iDP4uYCeHzqEOaCGXbcAwOcK1rZC2BBuQ6aTX5fgU3w=; b=aJ/1qwubn0CASPVpRYd8b13X7iD65tWPi7YQDqLQvYOT/xBA19IK0tF5IXrql57THycRlJ E4Qveg/106Z35UMsWtplpaR6sLvhhBV9vIpn2HIamd4VEr//rqF1w18XrXeygNEE7qQHwp SEP9S7XZzFpwsa9LniWg3trPKGH4F4k= Received: from mail-qk1-f200.google.com (mail-qk1-f200.google.com [209.85.222.200]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-437-UtZ32APbMee-iw_SH0NmFQ-1; Fri, 14 Oct 2022 10:40:16 -0400 X-MC-Unique: UtZ32APbMee-iw_SH0NmFQ-1 Received: by mail-qk1-f200.google.com with SMTP id w13-20020a05620a424d00b006e833c4fb0dso3587391qko.2 for ; Fri, 14 Oct 2022 07:40:16 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=iDP4uYCeHzqEOaCGXbcAwOcK1rZC2BBuQ6aTX5fgU3w=; b=2+1Br4UPiU60QR9Q/vlNsF67WZHX0tv1Nxtv0iacy4FNmd+0FMVir7nyJ6Ay85HppI zG6Dmfoa9ML5M6sRTltPF5K6ue2QDq5fr+K7TC0aflDD6rThQNtIE8ZE5JHsBw7e3UbJ cmYCQkA0XTn2GBkaNq4FqAYOEf2axwSWr01/AIt35P0r0CeTqI7RGQhj/tX3XPZS4UMH JhvZGx3V6gpRcntdaThGYvqWId1xgnIa9igMvaL8pDrWOUUDoMSL+wsAZW6ullR0k4nK oQrcoZTVLXpU3ozfYlgo0MMXi3lIvPjpGwFfqxNerpkO60oTZLVymBTJ98A86k8EFCUq ryrg== X-Gm-Message-State: ACrzQf0drtMt72lqs1iNHZJPZVpNQOeqYQkOPE+TOKFFtqIeGVT0twQK Hg3X5jL97PE44CNKHxftBFrHwGL3biqwvjG3X+RTTYmE7MGMRL5RHCT1OvcLonpgptNDR2kfsUV ztxlWAPy3ZmlVugEZpK90wJF38RajkylmIkmw40V+dqF94AufAuKDdJHJvvDYL0hJK4ZmXr6j9g == X-Received: by 2002:a37:c85:0:b0:6ed:4a79:fc66 with SMTP id 127-20020a370c85000000b006ed4a79fc66mr4006758qkm.433.1665758415401; Fri, 14 Oct 2022 07:40:15 -0700 (PDT) X-Google-Smtp-Source: AMsMyM6IfO7EVM9SoCYkoTimioBOx4Rp2krEuu3nGfkA84AP3QQ2Bab1uDw6m7lhGlL2PHeYZ7hQHQ== X-Received: by 2002:a37:c85:0:b0:6ed:4a79:fc66 with SMTP id 127-20020a370c85000000b006ed4a79fc66mr4006731qkm.433.1665758415046; Fri, 14 Oct 2022 07:40:15 -0700 (PDT) Received: from x1n.redhat.com (bras-base-aurron9127w-grc-46-70-31-27-79.dsl.bell.ca. [70.31.27.79]) by smtp.gmail.com with ESMTPSA id d75-20020ae9ef4e000000b006ed61f18651sm2503120qkg.16.2022.10.14.07.40.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 14 Oct 2022 07:40:14 -0700 (PDT) From: Peter Xu To: linux-kernel@vger.kernel.org, linux-mm@kvack.org Cc: peterx@redhat.com, Axel Rasmussen , Andrew Morton , Mike Kravetz Subject: [PATCH v2 3/4] selftests/vm: Use memfd for hugepage-mremap test Date: Fri, 14 Oct 2022 10:40:13 -0400 Message-Id: <20221014144013.94027-1-peterx@redhat.com> X-Mailer: git-send-email 2.37.3 In-Reply-To: <20221014143921.93887-1-peterx@redhat.com> References: <20221014143921.93887-1-peterx@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" For dropping the hugetlb mountpoint in run_vmtests.sh. Cleaned it up a little bit around the changed codes. Signed-off-by: Peter Xu --- tools/testing/selftests/vm/hugepage-mremap.c | 21 +++++++++----------- 1 file changed, 9 insertions(+), 12 deletions(-) diff --git a/tools/testing/selftests/vm/hugepage-mremap.c b/tools/testing/s= elftests/vm/hugepage-mremap.c index e63a0214f639..e53b5eaa8fce 100644 --- a/tools/testing/selftests/vm/hugepage-mremap.c +++ b/tools/testing/selftests/vm/hugepage-mremap.c @@ -22,6 +22,7 @@ #include /* Definition of SYS_* constants */ #include #include +#include =20 #define DEFAULT_LENGTH_MB 10UL #define MB_TO_BYTES(x) (x * 1024 * 1024) @@ -108,26 +109,23 @@ static void register_region_with_uffd(char *addr, siz= e_t len) int main(int argc, char *argv[]) { size_t length =3D 0; + int ret =3D 0, fd; =20 - if (argc !=3D 2 && argc !=3D 3) { - printf("Usage: %s [length_in_MB] \n", argv[0]); + if (argc >=3D 2 && !strcmp(argv[1], "-h")) { + printf("Usage: %s [length_in_MB]\n", argv[0]); exit(1); } =20 /* Read memory length as the first arg if valid, otherwise fallback to * the default length. */ - if (argc =3D=3D 3) - length =3D argc > 2 ? (size_t)atoi(argv[1]) : 0UL; + if (argc >=3D 2) + length =3D (size_t)atoi(argv[1]); + else + length =3D DEFAULT_LENGTH_MB; =20 - length =3D length > 0 ? length : DEFAULT_LENGTH_MB; length =3D MB_TO_BYTES(length); - - int ret =3D 0; - - /* last arg is the hugetlb file name */ - int fd =3D open(argv[argc-1], O_CREAT | O_RDWR, 0755); - + fd =3D memfd_create(argv[0], MFD_HUGETLB); if (fd < 0) { perror("Open failed"); exit(1); @@ -185,7 +183,6 @@ int main(int argc, char *argv[]) } =20 close(fd); - unlink(argv[argc-1]); =20 return ret; } --=20 2.37.3 From nobody Mon Apr 6 18:06:08 2026 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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 26910C433FE for ; Fri, 14 Oct 2022 14:40:38 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229598AbiJNOkh (ORCPT ); Fri, 14 Oct 2022 10:40:37 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:34718 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229920AbiJNOkU (ORCPT ); Fri, 14 Oct 2022 10:40:20 -0400 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id C045A32BB1 for ; Fri, 14 Oct 2022 07:40:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1665758418; h=from:from: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:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=SLJyHDSa1XQjsFtgHwRksRspzx5xxcL5BS8fvTY+AU0=; b=UsT97ZClr4/SeZvJKlLKREonCleLLyQP4u9p5A5jYtk6zBDjoEbdfyTUmun2c2+3snCZ30 XttAhYrPfjo6VbJvXJFilPWTiLK31cqD0hRWucFRyXXpI0Sljq5mbJ0QcHtRPu9cUjU4H5 cPnoxBadxv7g9P1RV4Ixiyz98R6JUEo= Received: from mail-qt1-f200.google.com (mail-qt1-f200.google.com [209.85.160.200]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-473-l2-pIrjSOlSd8JWwGEzymQ-1; Fri, 14 Oct 2022 10:40:17 -0400 X-MC-Unique: l2-pIrjSOlSd8JWwGEzymQ-1 Received: by mail-qt1-f200.google.com with SMTP id fy10-20020a05622a5a0a00b0039cd5097697so3083687qtb.7 for ; Fri, 14 Oct 2022 07:40:17 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=SLJyHDSa1XQjsFtgHwRksRspzx5xxcL5BS8fvTY+AU0=; b=njLf7CxO1+a141ENli4XFLoYuI9II0UZjYyWavLSxV4BjK/ynXj/5YAxk2Uu48jiNp HS6L9p6LSMMtESvRDA1d2K8yQRNq27F4FQCO8eZomKu506cJiqVeEn22zlRMMIDhFyWh dvsObceuBa9DKKaCOP8JdrWNb25hMIvKw3U4YcPtWVHZHrSxo/6NdYY4yR9JnKqnq5Dt HtOhR30puE03eHvIiY1UG8twz9VG8q+JjZsp6mLX72dhrc2mZzIjDvHw+qfFFoH8iuCd tP5QAc3GMmlkdXqYR8+zoI3RbTdxR5Z5mYQrv7tnE0J2o+qkSNlKBkkUJzNH2FCA2vdy /KbA== X-Gm-Message-State: ACrzQf1FrJGx/maQWs3Z6A4SK6bdNHcM11ny0HmjXWvnRcJH8m2suPRb rbhXHvAhMEmNvd9HfXb3VSjlBbhc6RlvNCncEzd6itLNVLoWG4AQ0Ra5V90NTSr84Jl/ljg6Hor bt42bpSEG2vw8Y9WpGug8s6VrZ09ik0W6M8XNdvKfPsuyiOfJqYjWcCjck9CFNRGyQX6OOzgj7Q == X-Received: by 2002:a0c:a98e:0:b0:4ac:929d:216f with SMTP id a14-20020a0ca98e000000b004ac929d216fmr4569053qvb.16.1665758417185; Fri, 14 Oct 2022 07:40:17 -0700 (PDT) X-Google-Smtp-Source: AMsMyM4t7KsjP3Hg9ck1XOwaKdT6cqdt/Zic+OGydxXGKoiUwwJ5ZsQBmo1MvrILCejlsR+qV7KlAg== X-Received: by 2002:a0c:a98e:0:b0:4ac:929d:216f with SMTP id a14-20020a0ca98e000000b004ac929d216fmr4569025qvb.16.1665758416855; Fri, 14 Oct 2022 07:40:16 -0700 (PDT) Received: from x1n.redhat.com (bras-base-aurron9127w-grc-46-70-31-27-79.dsl.bell.ca. [70.31.27.79]) by smtp.gmail.com with ESMTPSA id u6-20020a05620a0c4600b006cec8001bf4sm2414202qki.26.2022.10.14.07.40.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 14 Oct 2022 07:40:16 -0700 (PDT) From: Peter Xu To: linux-kernel@vger.kernel.org, linux-mm@kvack.org Cc: peterx@redhat.com, Axel Rasmussen , Andrew Morton , Mike Kravetz Subject: [PATCH v2 4/4] selftests/vm: Drop mnt point for hugetlb in run_vmtests.sh Date: Fri, 14 Oct 2022 10:40:15 -0400 Message-Id: <20221014144015.94039-1-peterx@redhat.com> X-Mailer: git-send-email 2.37.3 In-Reply-To: <20221014143921.93887-1-peterx@redhat.com> References: <20221014143921.93887-1-peterx@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" After converting all the three relevant testcases (uffd, madvise, mremap) to use memfd, no test will need the hugetlb mount point anymore. Drop the code. Reviewed-by: Axel Rasmussen Signed-off-by: Peter Xu --- tools/testing/selftests/vm/run_vmtests.sh | 18 +++--------------- 1 file changed, 3 insertions(+), 15 deletions(-) diff --git a/tools/testing/selftests/vm/run_vmtests.sh b/tools/testing/self= tests/vm/run_vmtests.sh index e780e76c26b8..0dc9f545a32d 100755 --- a/tools/testing/selftests/vm/run_vmtests.sh +++ b/tools/testing/selftests/vm/run_vmtests.sh @@ -5,7 +5,6 @@ # Kselftest framework requirement - SKIP code is 4. ksft_skip=3D4 =20 -mnt=3D./huge exitcode=3D0 =20 #get huge pagesize and freepages from /proc/meminfo @@ -84,9 +83,6 @@ run_test() { fi } =20 -mkdir "$mnt" -mount -t hugetlbfs none "$mnt" - run_test ./hugepage-mmap =20 shmmax=3D$(cat /proc/sys/kernel/shmmax) @@ -98,14 +94,9 @@ echo "$shmmax" > /proc/sys/kernel/shmmax echo "$shmall" > /proc/sys/kernel/shmall =20 run_test ./map_hugetlb - -run_test ./hugepage-mremap "$mnt"/huge_mremap -rm -f "$mnt"/huge_mremap - +run_test ./hugepage-mremap run_test ./hugepage-vmemmap - -run_test ./hugetlb-madvise "$mnt"/madvise-test -rm -f "$mnt"/madvise-test +run_test ./hugetlb-madvise =20 echo "NOTE: The above hugetlb tests provide minimal coverage. Use" echo " https://github.com/libhugetlbfs/libhugetlbfs.git for" @@ -126,14 +117,11 @@ for mod in "${uffd_mods[@]}"; do # Hugetlb tests require source and destination huge pages. Pass in half # the size ($half_ufd_size_MB), which is used for *each*. run_test ./userfaultfd hugetlb${mod} "$half_ufd_size_MB" 32 - run_test ./userfaultfd hugetlb_shared${mod} "$half_ufd_size_MB" 32 "$mnt"= /uffd-test - rm -f "$mnt"/uffd-test + run_test ./userfaultfd hugetlb_shared${mod} "$half_ufd_size_MB" 32 run_test ./userfaultfd shmem${mod} 20 16 done =20 #cleanup -umount "$mnt" -rm -rf "$mnt" echo "$nr_hugepgs" > /proc/sys/vm/nr_hugepages =20 run_test ./compaction_test --=20 2.37.3