From patchwork Tue Mar 18 17:43:39 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ryan Roberts X-Patchwork-Id: 14021376 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 CE273C35FF3 for ; Tue, 18 Mar 2025 17:44:00 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 31FA6280002; Tue, 18 Mar 2025 13:43:58 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 28FE9280007; Tue, 18 Mar 2025 13:43:58 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 06BB4280005; Tue, 18 Mar 2025 13:43:57 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id C9899280005 for ; Tue, 18 Mar 2025 13:43:57 -0400 (EDT) Received: from smtpin24.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 6E25458A54 for ; Tue, 18 Mar 2025 17:43:58 +0000 (UTC) X-FDA: 83235394956.24.CA70A86 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by imf14.hostedemail.com (Postfix) with ESMTP id 9A1EF100011 for ; Tue, 18 Mar 2025 17:43:56 +0000 (UTC) Authentication-Results: imf14.hostedemail.com; dkim=none; dmarc=pass (policy=none) header.from=arm.com; spf=pass (imf14.hostedemail.com: domain of ryan.roberts@arm.com designates 217.140.110.172 as permitted sender) smtp.mailfrom=ryan.roberts@arm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1742319837; a=rsa-sha256; cv=none; b=gFIIgrxrM2TrWs5z5m0UeCzHX1R6Fw4HyGMeKhp7PpUwPoUUGleRr2kh5QV2yML5MsKd5h WHGr/1o7x1vBwqW8vpquQ9iLtHT9gbJCJCYf5+BqNW3K2D5JSocu7vqaK1ZwuvOERhwkq3 N9dTo4LFRLTDNNgmcm9H6E1J6SaRQMo= ARC-Authentication-Results: i=1; imf14.hostedemail.com; dkim=none; dmarc=pass (policy=none) header.from=arm.com; spf=pass (imf14.hostedemail.com: domain of ryan.roberts@arm.com designates 217.140.110.172 as permitted sender) smtp.mailfrom=ryan.roberts@arm.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1742319837; 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-transfer-encoding:content-transfer-encoding: in-reply-to:references; bh=hI7eBDsFPsXfkNGQTfloPMrld/cFCnV5RLewB6g3Jnk=; b=lyzmxsj0WgwsYg8faFBi0AqaChd+C2TG6cvmbAHeTxhzxkvgPKKaHThw2pZbPM4TNUcEHb RMg2ZtPTS6d9qOYucaAw+PmINiYyuvLY9xCQdhp8vK9nb4UQIGSiu59QFF5cyVUlOzD0Lu OPi0dT/MLVFdEfVSFEYh3LTlBrBmXpM= Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 234C413D5; Tue, 18 Mar 2025 10:44:04 -0700 (PDT) Received: from e125769.cambridge.arm.com (e125769.cambridge.arm.com [10.1.196.27]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id CC4053F673; Tue, 18 Mar 2025 10:43:54 -0700 (PDT) From: Ryan Roberts To: Andrew Morton , Shuah Khan , Peter Xu Cc: Ryan Roberts , linux-mm@kvack.org, linux-kselftest@vger.kernel.org Subject: [PATCH v1 1/3] selftests/mm: Fix half_ufd_size_MB calculation Date: Tue, 18 Mar 2025 17:43:39 +0000 Message-ID: <20250318174343.243631-1-ryan.roberts@arm.com> X-Mailer: git-send-email 2.43.0 MIME-Version: 1.0 X-Rspam-User: X-Rspamd-Queue-Id: 9A1EF100011 X-Rspamd-Server: rspam05 X-Stat-Signature: hx8wd9ygnk67oyszfxpwxpekhpd1t1ue X-HE-Tag: 1742319836-39931 X-HE-Meta: U2FsdGVkX1+2mL5OoScViNC6O8ZeU6yOrU+THphc0ybeLP0ObNtOQ40tHyHuVXJ8VMQFLDeqQwNGfaA3hcTM3SvuTSZ07hVJRTdm5qX43hZ+1N1/2hiJ0yZMmFAVCOP9LkEp2jctQQM7bAN8ByBOoQyA7u+oVaxyhMgSeGnsAIJnQ6Ezcizqb8IgvXm/ZnP5UMfmkZ2mdGUQ5c9RvoMTqwTrrIqYbO31/9ermlQj+WL842rE/JeyTMLZwJWDGVpCx0l0rvNgmDceBcd0Er6BGn4syLV3pDxdyTuxtkWYAedUQ5CTxYX5VXYopzrERwNXmNPuuq7jYN9zdTZbktiK32G/aZC8zlFtZ3zfem/1Gw8dhxIuCXKcaBLWDfX2d+NlIRsa5bMiPGwafdOhexnBPO2UHIToOa/SvWZ0bJ8eXlmfceSeAMLJtEzDz8YhimhR/3aCOhe0Hy13sT+N+7/73VXKtm98qbvNKgnH0Aev3PIg4SugCq84VkjrGsJDhBLZ19dzQiD87WKFanzU7LNxm5K26A3emQfN3UpaNhay/l9uU35EywYZp2jXpipIaH4Tsc5MSzvQd55C2WYHV1WvLiQu9be1/Et3kt/uMNl9ZrIRvs4WP+0B6MlHOoUom5fxmz6v7AynocLBRAyas3j4PE0nJdprywZ6VzLNKmvt9cDhg9eV94Bc2TkiDfnkAjshkYZgKa76DwhFTe6gdJpmWlOPql4Zgh7xQSJdlmf1WuslC/8/kTZp1QJgYe3GO7lhnt3fUwZpwVNkn7aP2an1eHfzZGhf/aPX1imjF7e3FCqa6FXIvKXZFNh+Wis+ZqDvc1vgYRBOlumdtQSWF+1IBzzQSz5MKwv1FMUFRJs83h9PwGNmEf/uYloUK1opvEG0Cbf9cpxRaxmNrMstEeH8UAg0g1nhctzloArqJfeLUmCGZX6w/6QwBU/RFC0pIwq9Oq+F98vXiCHRgCH9gDP lj/FEDuN nsUmmh3qIl3+ItBjzB8hodUlr9ViRGAKJHV9bPiGssTTs8V4jbVfb5A4cwNehq2Vc92Ufw4nBfy55fMSMJ+Sle33dQ43llXhCwAiiYPsDiIkM7GLxTgVSuFh/xe+0nIT6ivoptlAz36+UzjzGIXwfvmQuxTv0raw+eatzUaBt4cV/Y7+b1as4M4ADcTxB4vqyVbxsmkkr3xbX/7s= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: $half_ufd_size_MB is supposed to be half of the available hugetlb memory expressed in MB. But previously it was calculated in pages since $freepgs is the number of free pages. When huge pages are 2M it doesn't make a whole lot of difference; the number of pages that get used is just halved. But on arm64 with 16K or 64K base pages, the PMD size (and default hugetlb size) is 32M and 512M respectively. So in this case we end up passing a number of MB that is smaller than a single hugetlb page and the test raises an error. Fixes: 2e47a445d7b3 ("selftests/mm: run_vmtests.sh: fix hugetlb mem size calculation") Signed-off-by: Ryan Roberts --- tools/testing/selftests/mm/run_vmtests.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- 2.43.0 diff --git a/tools/testing/selftests/mm/run_vmtests.sh b/tools/testing/selftests/mm/run_vmtests.sh index da7e26668103..14fa9d40d574 100755 --- a/tools/testing/selftests/mm/run_vmtests.sh +++ b/tools/testing/selftests/mm/run_vmtests.sh @@ -304,7 +304,7 @@ uffd_stress_bin=./uffd-stress CATEGORY="userfaultfd" run_test ${uffd_stress_bin} anon 20 16 # Hugetlb tests require source and destination huge pages. Pass in half # the size of the free pages we have, which is used for *each*. -half_ufd_size_MB=$((freepgs / 2)) +half_ufd_size_MB=$(((freepgs * hpgsize_KB / 2) / 1024)) CATEGORY="userfaultfd" run_test ${uffd_stress_bin} hugetlb "$half_ufd_size_MB" 32 CATEGORY="userfaultfd" run_test ${uffd_stress_bin} hugetlb-private "$half_ufd_size_MB" 32 CATEGORY="userfaultfd" run_test ${uffd_stress_bin} shmem 20 16