From mboxrd@z Thu Jan 1 00:00:00 1970 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 DF04DC54ED1 for ; Fri, 23 May 2025 18:43:21 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 473AC6B009A; Fri, 23 May 2025 14:43:21 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 4225E6B009C; Fri, 23 May 2025 14:43:21 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 2EACD6B00B3; Fri, 23 May 2025 14:43:21 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id 0B1046B009A for ; Fri, 23 May 2025 14:43:21 -0400 (EDT) Received: from smtpin26.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id 2D01B1A0D67 for ; Fri, 23 May 2025 18:43:20 +0000 (UTC) X-FDA: 83475045360.26.EF51611 Received: from mail-wm1-f47.google.com (mail-wm1-f47.google.com [209.85.128.47]) by imf15.hostedemail.com (Postfix) with ESMTP id 55C26A000B for ; Fri, 23 May 2025 18:43:18 +0000 (UTC) Authentication-Results: imf15.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=Yy8G4WRB; spf=pass (imf15.hostedemail.com: domain of khaledelnaggarlinux@gmail.com designates 209.85.128.47 as permitted sender) smtp.mailfrom=khaledelnaggarlinux@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1748025798; 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:content-transfer-encoding:in-reply-to: references:dkim-signature; bh=btTTfvQ93Rrp+cfCkaZPBbleiZuXCpTdB3DJ5XEH6Kk=; b=QxnkAoap6C/Z4cCHj1bn0S4VX+w/EUOBQHWv/teQO7rqyIMv5L/9uBYDDgj+VP0vppMQ0+ jC9qZ86myNU63LHDHlfA8Kqr7zDK4j0GvE/TnOoLcZwH0l8owvz3pnTZEd5RFRsMq7DhoU NMsn9U+0RirVCHSqbVy/Q7Dv0mmAWKc= ARC-Authentication-Results: i=1; imf15.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=Yy8G4WRB; spf=pass (imf15.hostedemail.com: domain of khaledelnaggarlinux@gmail.com designates 209.85.128.47 as permitted sender) smtp.mailfrom=khaledelnaggarlinux@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1748025798; a=rsa-sha256; cv=none; b=jY91ayxPEoSxoG6Xcr180Ecuohv7ERL6EDHvstSDuYJEHyr005j+zbA78GBrpqHcvnremH 48lCC/IINz2h6dRQPs43g9rjvEpB6eZppA2g+MQaYoKuNSRI/Pxk4I5k/sOizDSxs1Hr8d 6FW61d5er8xKPHL1WOTgOrAVNO0UP6E= Received: by mail-wm1-f47.google.com with SMTP id 5b1f17b1804b1-43cfa7e7f54so1537525e9.1 for ; Fri, 23 May 2025 11:43:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1748025796; x=1748630596; darn=kvack.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=btTTfvQ93Rrp+cfCkaZPBbleiZuXCpTdB3DJ5XEH6Kk=; b=Yy8G4WRBc+yxrKY+ibhuKwcu+qdd+2zizKinDfsP3SCYRKCfb5t6H80OH7P1CHt1vD tEf+gAp0QTXNpfujXb8wZMMcDC6aj/aSUVWLylxlo2JvZQkD9mamw3Zo0hu1dZsU0gKw 8sjUPqDA5cc81N5KU3AG5GwoO40346SqYlzbwEdrTTXEDww1P4Lu4Hojgk7v8qezJdR5 Jyv1rU4KJm5V7hBykE7dJufm5F0rRbg4LSE57tcVpFQe644YWDfz60SO4zv2u3VUy//x cCiUELrnE/QRmT8t6bhj6wuRJVrH2eFUz94zgKEq3YXSUMj7C5NuJYwE/8fXKId5WY6L BlTw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1748025796; x=1748630596; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=btTTfvQ93Rrp+cfCkaZPBbleiZuXCpTdB3DJ5XEH6Kk=; b=ehRrI2Kc8D2K3e5+qE0mfnPLOjGwCTYtkIUL3K0q7RhPAND7CH6Avz0xofZ108jCoI cLOBBhfMgYQGVW5siobwLF3JZhUpdoAJ1mZvt7xWWksZJde1dIUukZDp/4oUOK7Q7xGJ CRiNEdBg3Ni7gI9IOP8p3s/dirEGzLF2J46+7girvIPqAzhnwi6BOYvH02Z13Ur3d9FA iJjOoo8J762HydG3ZpR5Cs9uUpCO8eQW+y9XjXaCmbOR9JeY3DUHKFTmr+LmKJtOrJ4n 6Bs6tVg0wDzwnPRU3xWOfo0esYa9aGFMJmyxGiI2EQUNujjHq/eba9ehWTYQSUUhlKpv XVHw== X-Gm-Message-State: AOJu0YxGyzGgoB3Gd4SQrAElLJi7r2QQp7aII1P6amMsLF8Bya1w04ZB ILFQ274b5aMtMpdlvGsuF3nJH65tQ3GiTcEjUty3zDgCN0wT0zN7/CFN2WiK4gK6 X-Gm-Gg: ASbGnct7XVHQ2/W4mRkBU+APz5mpJyojK0sYf3TQXssgtmvhlaEkmN2LNX/PRl3Pw1D 13tpdkxGSX/StSP9Of5AMQl5x6ldTr1kLgs2oow9N6DqrGjmxnvvQu9XgPU5gKpDDEjTAwx+q7x A4GhFPIhORoxln2rZilHz+AQ+x7N+theBe44SaM8/Um+4uMLBCQbZAZ0s18GfplV6MshBblI9GQ WDRb5nq/fZuYtETLJpszf5uo9s8T4VenpEodXYFVKKH7uY3Lm3kwembA0pJkarft4oTOsZghU6e vAy7vBi6cWzFKBh9Zswop5CIpxatUBimCuAJyqLc13Oc6LSe3p65vBX8Rs6SLx20uoWPxDqFclb yRDa8dbBWxusc X-Google-Smtp-Source: AGHT+IGbySv0kJkzhoWrw/RDGSmd5NY01lUNmRSyAzY3QDkI4nh5xMLz5f+ebRm9TH2KKXtfV5Tq6A== X-Received: by 2002:a05:600c:524c:b0:440:69f5:f179 with SMTP id 5b1f17b1804b1-44b51f4c57bmr45533255e9.7.1748025796031; Fri, 23 May 2025 11:43:16 -0700 (PDT) Received: from localhost.localdomain ([154.183.50.249]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-447f74cce5bsm145897875e9.24.2025.05.23.11.43.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 23 May 2025 11:43:15 -0700 (PDT) From: Khaled Elnaggar To: linux-mm@kvack.org Cc: Khaled Elnaggar , linux-kernel-mentees@lists.linux.dev, akpm@linux-foundation.org, shuah@kernel.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [RFC] selftests/mm: Skip tests dependent on a binary not built Date: Fri, 23 May 2025 21:43:12 +0300 Message-ID: <20250523184312.2647781-1-khaledelnaggarlinux@gmail.com> X-Mailer: git-send-email 2.47.2 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Server: rspam01 X-Rspamd-Queue-Id: 55C26A000B X-Stat-Signature: i5dd5rdr5pzkaubi781uko8igt7a6bn8 X-Rspam-User: X-HE-Tag: 1748025798-233150 X-HE-Meta: U2FsdGVkX1+jjpM3LQNOrzpWSrpbb/4rBqIn8OowoqBLPsfTETdylel7d5PVO20NkdoxNWu9bOaEKgJuSo2od67mvw9R4TcrJJGPwz7vSLiCGDS4yfuYAg026RgyhmgCawaNBix8GIC0QexTlhtWeg0rQEmrzkMIUBIrIfz91lhjiv/64EmHn0ikeA7+YnpS3RbSXP4/rRq5i57ERjx7JCV3z6XqBbCdgLZngVSBKhyq7FNjwZZ1KgOzeX1Uuda5naN5r7OE1L6QISwbDcuP2o4679TMekhPeWes6laKYJ86XcmXtP5+SoPMZgfkqdE76PMjZUwB8TnYRpmhFcPdt2sTPSD2B49dvzwK6Wyj5/p/g+rfpXszOQeGhpPhbjK/8DVMlnxWL97ROxmyrsvoh6kgNPjG8/eLiXfqd8r75OZNHPDHqULsRk0rBcRT1mq3Pqd6e9qo8R09SWwdkypUyt5LbDm9lj012FurlEp3pn9D5udqyGVjXbsx99mbxJyhfc4AKKa1iMuQMFJHHR+V5kQoX2sKg2O2B2gs4R9IogGcRjZLll6Ussthr77Vip7nbu9dvyvQe5G47XMO5JeByWvZUDqpBk6iXcnLuxJVoBM4HUXfUVqeL1Cs+3qFu+aFLzNgjiTOkRJulSZMovPEnKCzjgWgrfB0z0mhB4b1lfa2JvJed7sHmc8s7epOBZpc2h9HDQHcDSuqNrbix/BO9ArtWhDNJk29WukH24UiMFOIFP6hnbMLKQlCueXwTAel0JYKmcjq7rNxtB8L1mdhq0xF/rlpoJkN4mMgauCd8a5N1BmpICWUMFqTvuIlmKbphCx2DliCtlVNuskZzLIspugzcCfwX9xtmylH04/Gwt7jbAQNlNmYyT80xJqCycMK8i0cENkxgAUiP/dUB0XVgPLRK3jYx7GCx92+RPNMmWOl44mdj9C6xwc8rnDx9my/ptuwObLm5mxjDLt/Qis 6psFRY5Q SdBOH4w3fPB8Brmt4RBrG266AiVPUgCq7ZuzMP6okycD1KZBB3vm7k4TK9nesMrShslSfqcpLsVOBThkYIoDxKfcSG/xs4A3m+avsITUuMN+xeEM9dVFuGimuJ1bza+uFnRv7/v1BCRMaliTzjARPj9zfJD6AebBWN0bPQp45pbU0bFq95xLyFmiITuPDmqVDOc55m1Y9td3Ple4f2m+7xcetBf7vRMd/parc23INsKtsKLP8x5zKorWKtNOzQD+h4cdt7AOW1/v3H50cWmnG/DBLESZMtujc2mD3AB/6m7cw9JOF/Ane8ue2E8x1TrT9O2RqVzFSmgZfzQ4Um1qY49ZSvTL2SVEEGH3VTUE/gifW1MUlcdl4fNorlIA3RsLefVeoEZFzC8sUVSvby4FWOK4M0g== 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: Hello. Running the mm selftests from the kernel's root directory on an x86_64 debian machine using: make defconfig sudo make kselftest TARGETS=mm the tests run normally till we reach one which stalls for 180 seconds and times out according to the following logs: ``` ----------------------------------------------- running ./charge_reserved_hugetlb.sh -cgroup-v2 ----------------------------------------------- CLEANUP DONE CLEANUP DONE   Test normal case. private=, populate=, method=0, reserve= nr hugepages = 10 writing cgroup limit: 20971520 writing reseravation limit: 20971520 Starting: hugetlb_usage=0 reserved_usage=0 expect_failure is 0 Putting task in cgroup 'hugetlb_cgroup_test' Method is 0 >>> write_hugetlb_memory.sh: line 22: ./write_to_hugetlbfs: No such file or directory <<< Waiting for hugetlb memory reservation to reach size 10485760. 0 Waiting for hugetlb memory reservation to reach size 10485760. 0 ... Waiting for hugetlb memory reservation to reach size 10485760. 0 Waiting for hugetlb memory reservation to reach size 10485760. 0 not ok 1 selftests: mm: run_vmtests.sh # TIMEOUT 180 seconds make[3]: Leaving directory '/linux/tools/testing/selftests/mm' ``` Logs show that the executable "write_to_hugetlbfs" is missing, causing the test to hang waiting for hugepage reservations. The executable not found means it was not built by the Make system. It is mentioned in Makefile:136-142, and only built if ARCH is 64-bit ``` ifneq (,$(filter $(ARCH),arm64 mips64 parisc64 powerpc riscv64 s390x sparc64 x86_64 s390)) TEST_GEN_FILES += va_high_addr_switch ifneq ($(ARCH),riscv64) TEST_GEN_FILES += virtual_address_range endif TEST_GEN_FILES += write_to_hugetlbfs endif ``` So, for some reason, the top-level Makefile provides ARCH as x86. My proposed solution is similar to existing virtual_address_range check that is to check for the binary, and if it is not found, skip these 2 test cases: charge_reserved_hugetlb.sh and hugetlb_reparenting_test.sh since they directly and indirectly depend on write_to_hugetlbfs binary. This is just a workaround, the root issue of different ARCH detection when running tests from the kernel root directory should still be addressed. I am not sure how to approach it and open for your suggestions. Note that this issue does not happen when ran from selftests/mm using something like sudo make -C tools/testing/selftests/mm because then mm/Makefile's ARCH detection runs correctly (x86_64) Kindly review and share your thoughts. Signed-off-by: Khaled Elnaggar --- tools/testing/selftests/mm/run_vmtests.sh | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/tools/testing/selftests/mm/run_vmtests.sh b/tools/testing/selftests/mm/run_vmtests.sh index dddd1dd8af14..cdbcfdb62f8a 100755 --- a/tools/testing/selftests/mm/run_vmtests.sh +++ b/tools/testing/selftests/mm/run_vmtests.sh @@ -375,8 +375,13 @@ CATEGORY="process_mrelease" run_test ./mrelease_test CATEGORY="mremap" run_test ./mremap_test CATEGORY="hugetlb" run_test ./thuge-gen + +# the following depend on write_to_hugetlbfs binary +if [ -x ./write_to_hugetlbfs ]; then CATEGORY="hugetlb" run_test ./charge_reserved_hugetlb.sh -cgroup-v2 CATEGORY="hugetlb" run_test ./hugetlb_reparenting_test.sh -cgroup-v2 +fi + if $RUN_DESTRUCTIVE; then nr_hugepages_tmp=$(cat /proc/sys/vm/nr_hugepages) enable_soft_offline=$(cat /proc/sys/vm/enable_soft_offline) -- 2.47.2