From nobody Mon Feb 9 23:42:38 2026 Received: from mail-wr1-f74.google.com (mail-wr1-f74.google.com [209.85.221.74]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 2E97728629B for ; Fri, 28 Feb 2025 16:55:17 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.74 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740761719; cv=none; b=Zq8Iv5LudiFgsevYCvz9UCi3mMsLINGgOahR389nEdVDe3quHR0tUCpfUZwIPILP4S9GLgPWSZ6hHH5YGOL40J1bVxZ244sKwd9fdE6y/QyFaDnsoNGbMuT9Xgu/ViKpgCkH4kLoa0ajrevADM/qI4EM3X5/arBgkVBbZO3jRsI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740761719; c=relaxed/simple; bh=KNpskPcxfPhqPpFfjuljLY2fvRa+/kXrp30Qg66iAYQ=; h=Date:In-Reply-To:Mime-Version:References:Message-ID:Subject:From: To:Cc:Content-Type; b=gRru+SDY7uGDRjfc1YMFS3ckTxkarMmjStY94WWqD90UQpJqP7thmw0OBHCblvUoIghem8f7rMBXKGkVLkP3ssI0M0HJBLeCmOof+Filr6kj2tw+Cx2aYZol5iI7aepmgvVc/QJK/n0DsslrzjRRcgkxue7ABCPJFYn3iUczeM4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com; spf=pass smtp.mailfrom=flex--jackmanb.bounces.google.com; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b=20PUkHL6; arc=none smtp.client-ip=209.85.221.74 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=flex--jackmanb.bounces.google.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="20PUkHL6" Received: by mail-wr1-f74.google.com with SMTP id ffacd0b85a97d-38f28a4647eso1123750f8f.1 for ; Fri, 28 Feb 2025 08:55:17 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1740761716; x=1741366516; darn=vger.kernel.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=2Ql5hc6LJFV7jS99QKiJbBHefyQj7jLlsETMiqi11w8=; b=20PUkHL6q7Ct2ihfse5+vuwCHYBNEyGydEMVwFHcN/3D60tlpDd9dsV+7cBmHmzb02 JL24YpUTA8JglXWvj3/yO54XU+Fr6YY/JsK1zLJxkIJsIvXGLOqxu3Vsms0A74QI5+KO toNFH7h6QX/+RhLH6/affOKV1LF2xc810tDsF/xSSBNypkfHSSkmv0a3AywcTlFKP2rx gYvuVFQ9aggFyCrks5p2aGml9nRyUDrK5nfWnmsjEJHa+YkQAjZA4mvQRAXr3s5KD+8E DgDmph3RJcB8jOvPxK8J6pulDTijLkMY+0VLn4iZYvH/89hp/PikkaCOlqzVyFl/0WkZ jr9g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1740761716; x=1741366516; 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=2Ql5hc6LJFV7jS99QKiJbBHefyQj7jLlsETMiqi11w8=; b=eXsGV3eXIgAI0otukahsw41MuGpX1PhQkzKsdMpILW2cHuIRD73KKkKY0W5q2U/pgU xUBZTXKEWqT0+eXSCbxFEe7PR0FgzY1UKUtnCH/iDnLbd5I8x42szs0e72qK9x6awsKg zcXCLc40AhLRf4olfHnack+2japRX/wYgu2Hj3JZg7f/Ga5Vdk4AkWfrQn+Tx071+D5W OaR4DigguIdCQ1yoQbIHmBTfGVS4Pb2/tfPr4SSVoxfiICGNRC/GZBTQrPJfe62gA2t9 a6Z5H06pOTKcYIGINddGL7q/y0JB5wq8Pi0JILGQ1IjlJVpyQx6S5XYVYZjI/NJgApgd uLSw== X-Forwarded-Encrypted: i=1; AJvYcCXoZcnLPHCazJ4sPt+tbKaWOzqTMP264mdrmNoGNYaQmrNAc+w87FjoOf9u2ubCHJBeYKuc2jqHkHweJbg=@vger.kernel.org X-Gm-Message-State: AOJu0Yw38mF/KMFcTvHVS1FQIgGLi2AX0z+b6XMscLiuRgBK8HRjPKFN 69oLMLuzifFtJpudvJidltfZKSBud1FbaXBz0aCIhd467QlDoPw+29gYjniWTviyhCYwjVFbKoz ViKwZM9KKsQ== X-Google-Smtp-Source: AGHT+IFB7nITz7U/iMU0tPl/bO9xV6X55cC7dWX52NbyH2lvSNR7sagUxaeaf3fhuxPU57nHGgdGlD6quABXnQ== X-Received: from wmbbh15.prod.google.com ([2002:a05:600c:3d0f:b0:439:9fd1:8341]) (user=jackmanb job=prod-delivery.src-stubby-dispatcher) by 2002:a05:6000:188c:b0:38f:3224:65ff with SMTP id ffacd0b85a97d-390ec7c6a8emr2890522f8f.5.1740761716612; Fri, 28 Feb 2025 08:55:16 -0800 (PST) Date: Fri, 28 Feb 2025 16:54:58 +0000 In-Reply-To: <20250228-mm-selftests-v3-0-958e3b6f0203@google.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 References: <20250228-mm-selftests-v3-0-958e3b6f0203@google.com> X-Mailer: b4 0.15-dev Message-ID: <20250228-mm-selftests-v3-10-958e3b6f0203@google.com> Subject: [PATCH v3 10/10] selftests/mm: Ensure uffd-wp-mremap gets pages of each size 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 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable This test allocates a page of every available size and doesn't have any SKIP logic if the allocation fails. So, ensure it's available and skip the test if we can't do so. Signed-off-by: Brendan Jackman --- tools/testing/selftests/mm/run_vmtests.sh | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/tools/testing/selftests/mm/run_vmtests.sh b/tools/testing/self= tests/mm/run_vmtests.sh index 0f9fe757c3320a6551e39b6d4552fd4874b0bf43..e86ef8cb37d00e572be8cf0ea9c= c8246d4eecd7e 100755 --- a/tools/testing/selftests/mm/run_vmtests.sh +++ b/tools/testing/selftests/mm/run_vmtests.sh @@ -309,9 +309,30 @@ CATEGORY=3D"userfaultfd" run_test ${uffd_stress_bin} h= ugetlb "$half_ufd_size_MB" 3 CATEGORY=3D"userfaultfd" run_test ${uffd_stress_bin} hugetlb-private "$hal= f_ufd_size_MB" 32 CATEGORY=3D"userfaultfd" run_test ${uffd_stress_bin} shmem 20 16 CATEGORY=3D"userfaultfd" run_test ${uffd_stress_bin} shmem-private 20 16 -CATEGORY=3D"userfaultfd" run_test ./uffd-wp-mremap +# uffd-wp-mremap requires at least one page of each size. +have_all_size_hugepgs=3Dtrue +declare -A nr_size_hugepgs +for f in /sys/kernel/mm/hugepages/**/nr_hugepages; do + old=3D$(cat $f) + nr_size_hugepgs["$f"]=3D"$old" + if [ "$old" =3D=3D 0 ]; then + echo 1 > "$f" + fi + if [ $(cat "$f") =3D=3D 0 ]; then + have_all_size_hugepgs=3Dfalse + break + fi +done +if $have_all_size_hugepgs; then + CATEGORY=3D"userfaultfd" run_test ./uffd-wp-mremap +else + echo "# SKIP ./uffd-wp-mremap" +fi =20 #cleanup +for f in "${!nr_size_hugepgs[@]}"; do + echo "${nr_size_hugepgs["$f"]}" > "$f" +done echo "$nr_hugepgs" > /proc/sys/vm/nr_hugepages =20 CATEGORY=3D"compaction" run_test ./compaction_test --=20 2.48.1.711.g2feabab25a-goog