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 C9E13C83F1B for ; Mon, 14 Jul 2025 13:00:17 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 3D7AA6B007B; Mon, 14 Jul 2025 09:00:17 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 3AF7B6B0089; Mon, 14 Jul 2025 09:00:17 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 29EA06B008A; Mon, 14 Jul 2025 09:00:17 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 18CCF6B007B for ; Mon, 14 Jul 2025 09:00:17 -0400 (EDT) Received: from smtpin12.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id B192056642 for ; Mon, 14 Jul 2025 13:00:16 +0000 (UTC) X-FDA: 83662878432.12.09666A4 Received: from mail-pl1-f178.google.com (mail-pl1-f178.google.com [209.85.214.178]) by imf29.hostedemail.com (Postfix) with ESMTP id 972A1120008 for ; Mon, 14 Jul 2025 13:00:14 +0000 (UTC) Authentication-Results: imf29.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=UYvC84uv; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf29.hostedemail.com: domain of lianux.mm@gmail.com designates 209.85.214.178 as permitted sender) smtp.mailfrom=lianux.mm@gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1752498014; 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:dkim-signature; bh=kdhygjTWkYpaSFBu0DB7UKG87wxSOP/hOy49fUGZyzM=; b=VGws6y2eVo/RiPsV4uQrX3X8nLnf7qxPO4WIJWBMYJZDDnJ0KEMpe3RWEqpq4+zrDlftTr NwqgcAjxTDtsSmt+fH8CvxUiZ2iqOHqnlpNz7d4m33IyHvwa3WmBQgjGh0Kb3fo8XP2FWy H2ebV6OzrKFP8O5FafhhowZ+FZVnfZI= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1752498014; a=rsa-sha256; cv=none; b=kdXGbyBWrnuBVf5OFCogL0X4ACq7/eKESF4jzd+YuQj08TgaW3IHra41l78lpshrVyyJyX /yGkiTjd/KyyqVvgjmTVeRGIXoR2gPa6hyuoXiA8VHgUXoGmeBNaQgiRbXCRaSudbC0jQg IdgVv9lTRfvvi9NdLI7XPVly3oP9UQ4= ARC-Authentication-Results: i=1; imf29.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=UYvC84uv; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf29.hostedemail.com: domain of lianux.mm@gmail.com designates 209.85.214.178 as permitted sender) smtp.mailfrom=lianux.mm@gmail.com Received: by mail-pl1-f178.google.com with SMTP id d9443c01a7336-234bfe37cccso34577215ad.0 for ; Mon, 14 Jul 2025 06:00:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1752498013; x=1753102813; 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=kdhygjTWkYpaSFBu0DB7UKG87wxSOP/hOy49fUGZyzM=; b=UYvC84uvUKWFY23w1Xo8ecbC3zU3De5Rg3UxrMsuRKJyckqQNdUQhlrduPB15Lt6Bn NT95qAbp/L5nMreQMhPfeTo8L94ZhdFaTlULGcusI8rupmnjZsFUAuvzWVdiBlfrys1y H1OqxSRh1f/7PFWnAmYoNgbhoTWvhucR0oopJzhMfTPojFRcHmujDQHI4BnOwexV+QWo 9gm8CesrMYbMbHDAMocCTkCYtJHVOy/1zMzWDakq3LbAqDisGTD+BFtuJp6q488s8pU/ C18L6bMlmdYqe3W7b+7M1TDfB2f/Xv2aV5nRuykKO38zXv0MKfSXYm1N8IRLqmghhHNh cmtg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1752498013; x=1753102813; 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=kdhygjTWkYpaSFBu0DB7UKG87wxSOP/hOy49fUGZyzM=; b=oRLzLSSt9Imop+s7XUwhHVkqE8mJtoHSh1e5QUCuZZi18LE0CHFbzirVjwcljGykZY hoebuDfNsi5yUP0bZ3HpbxwIjzEIu3i5Q3pdcW4YXEPq6ZWXipZ4dTFbub9FpF3Yrkj1 JgkPalKZF00paX738jPazCPluGAz0Ll0xJCa+KjVsfiuuv9C5kGtfbkL+jGZtLgLT9Er aUCFs4UPQGRZPRLkUa6mdS/fTiqhy4MfqwGekCIGJlGKuO85Uw6nOuxTPBuzDefXRI6L wn8DQ8j9a3JbwBjIe4N0lcAxMJ2jIlkZ0gtPS7Ruzcj6LxCrJ7i4cahmV6AYetV6eZzH IbMg== X-Forwarded-Encrypted: i=1; AJvYcCUKxyr6fsS7SLcwVdV1vkdPaGFeMQu7aDxZOTur9wVgRPSDCdFRaoNqw14beGIvw1cH0C9R3cm4Mg==@kvack.org X-Gm-Message-State: AOJu0Yz9vxgdnpwIufdG5Tahz0aNawi+Tb1Xf1M3E+v6Rw8BhJCiCvRR t8r8sx0qFqp3mVW1H/dd9/cFO95AyEgHQAQgy2nPqFsHoYHlYFcfbJ1G X-Gm-Gg: ASbGncvd9Q2Z4+q+6BBAaeEg4eOfcfb9vqYBYm1A140TkvYEPpBSf/0a5njxE/Wto+x uAmlkzRJcl5ZTpHehoTln3UCQVSVJxt5e9TYG94lHQyDVbMPA/fXhDM7Fy8H8b+D/ThVTdPpCR3 wQia5hcEmh9RdER2Y60XJpVLs7aigp4qNR3Rj8zK2PZ250PolbuZ0Ccj6WHeQtq9POv6j+NSP65 McdwSIBHvGcMjmt30aGLMLLZ7YifHmZDAoY3vreVtiPpjxP8Vf48LX/OXh357U368gGbcSpqR1l w0OrzlkgZXck4oQgmHvmVvoyAjjiP4XwU6SCsw1AVRqZtSq5Qe951IMudIreZw9CaBTwd0VJ3PS 7YLmby5eRj4gDrfIsMF8rxYZrZb7MikFWTcyyXCEGnvtc X-Google-Smtp-Source: AGHT+IGkJasHX+Ton3MShtwYeiZUNwYoffEjiSeQoYX4R1hV6/KiAc5FOwj/t95fynIJKIJcLYj6Rw== X-Received: by 2002:a17:903:46cd:b0:235:655:11aa with SMTP id d9443c01a7336-23dede92f44mr204562665ad.39.1752498012991; Mon, 14 Jul 2025 06:00:12 -0700 (PDT) Received: from DESKTOP-GIED850.localdomain ([114.247.113.178]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-23de4335c8asm99221105ad.167.2025.07.14.06.00.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 14 Jul 2025 06:00:12 -0700 (PDT) From: wang lian To: Andrew Morton , Mark Brown , David Hildenbrand , SeongJae Park , Lorenzo Stoakes , Zi Yan , wang lian , linux-kernel@vger.kernel.org Cc: Christian Brauner , Jann Horn , Liam Howlett , Shuah Khan , Vlastimil Babka , gkwang , p1ucky0923 , ryncsn , "zijing . zhang" , linux-kselftest@vger.kernel.org, linux-mm@kvack.org Subject: [PATCH] selftests/mm: refactor common code and improve test skipping in guard_region Date: Mon, 14 Jul 2025 21:00:09 +0800 Message-ID: <20250714130009.14581-1-lianux.mm@gmail.com> X-Mailer: git-send-email 2.43.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Stat-Signature: dpd4mkmrpxo56znmhwj4pihgjmzj85gp X-Rspamd-Queue-Id: 972A1120008 X-Rspamd-Server: rspam10 X-Rspam-User: X-HE-Tag: 1752498014-499289 X-HE-Meta: U2FsdGVkX1+YxSRsD/zAF7lgN7pHCE0dhH/a7QgyuhNatoRDckzgLbSI4cXossQkjyf9qaHaUT4kYAPNTSPvaGUv/7jUlVkeoq1TMGPG/eD2CRyDPp+BVLYe1YanwuJ4UA7cxThprDHnw2wTt/rftAVOBfzht6/7gWt2B2sgnubPtD9x3Y5MVBoqj1KfHYJ8pii0gyW9KvfnP8f26CMi1RaN0PHOT3mzJ0UccYjV5eW7QADjrh0cPqiM+YI0wQBXjPGPLOY+E275o+JSufowuN3fJxz0x+8ncC3SXT0Ky/ht7BUZSNCnOL1aLMT5YUHofdyyMu1ucZ9jqWi87o1LVc3b7jF4jPTxDJJ+K3Pll07Z3jwDjlway++rCJrY2Chg+EC2N2rHMK5YDIVPDALYzmSJaBZafAwm0YvDEU/Nx6dSRGSBs7A7uzTI5XTTywhC9vrr1wnBz/EsXp52GEjXvkOWkdmRg+ei1RwggX5rMeUmucyRjpoQqmBP3C7TP6S4OQkQRI/YHkNiwPgKNy2FrbUJWSMyjZAjGQlvpRsyBAIMaq3rRrX0cOb03Xs0IoPf2/SHMc2LOYzYXU/bbd+dIsPASw6q15Lh4qRfMyA6qMNHUgGWxo1A/Yia7Og3JtvXXLoVRhbXhBwkSiCwjFo04A76++cN4VD/JpnDZ3uLw7d5WBvRIyrrX7jdc+39r1UxT/yWPNdMWOpJtdSbk2fi6HD+NH5CLPlpzgLKrw1t5H8KiQvXNpJ0V9ohmA4R9qyzDP+2faVBoOr4cTq/y+c7e0qG12jQNUYYxqtI043BOgTjr0UltcNBtZ9SXgq8DM4bHgL4HpAvHoerd34JkHJa2bSopfhrGb1Ul29Tmhp6vpxy5eRw5ckkMmLD3jkoKZU87s8hyz0olf/0s+PxBXIDayAp6QF0AHC+XDF1yIsbOLefKhyDv6mK9i1tL/x2n3YGT2n0KEqvTsM1mOL5t4l nafC7Tek XhmCpLeqWyDh1EyceXGoVYtDLHnmi+CHZlAOGC966mbV0T9+vGX78uNNZd7vleKf2pZBowUlC0gAE8mrqYJLJDczJ2RYZLEEhbnvJouCrMy7Y9DRqaIeyPbYBC/D1OrbOODpa8NOE4qnrQg8GMpfmzzXnYHY9B8GyLi1Q/MTyyaJoXpSFA+7v8cRNyIHWJqUsTpu6tXV0o24fY2eVYGQzFVCwoGBiDpQ+Mvh0O/ip9gvgjE5si/PsHn/3toz6BQY0GBldo4nq5ypxbj91FPsM7T4XZpSZKEfCDTvREx4IxviKJcYfHb3ddfuGKZAEBKbR+nXbb/OZ6VvTVyRP63cE9Ii4gtvUA3PVaapmxW6QyUPC1c0ZAteEQSnv/SSIdeWwzDlPmS/AOtgRGlqfhxFWewzKlSP+TMWSOSsCNsij7wI6gKSPfIz4yqad7k5LMsWq9Ziqfy6EasSj0DnH7K8bVnz8KgxWyWYUYZ2wi2BGpxl0LW4VjXVlvEKafrV/byL0YJ7oPyH1DHmNK2oWKRR11eAdj2qbYzN4LVa4CeRx5G0LMUSmYJMplSgzZg== 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: Move the generic `FORCE_READ` macro from `guard-regions.c` to the shared `vm_util.h` header to promote code reuse. In `guard-regions.c`, replace `ksft_exit_skip()` with the `SKIP()` macro to ensure only the current test is skipped on permission failure, instead of terminating the entire test binary. Signed-off-by: wang lian --- tools/testing/selftests/mm/guard-regions.c | 9 +-------- tools/testing/selftests/mm/vm_util.h | 7 +++++++ 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/tools/testing/selftests/mm/guard-regions.c b/tools/testing/selftests/mm/guard-regions.c index 93af3d3760f9..b0d42eb04e3a 100644 --- a/tools/testing/selftests/mm/guard-regions.c +++ b/tools/testing/selftests/mm/guard-regions.c @@ -35,13 +35,6 @@ static volatile sig_atomic_t signal_jump_set; static sigjmp_buf signal_jmp_buf; -/* - * Ignore the checkpatch warning, we must read from x but don't want to do - * anything with it in order to trigger a read page fault. We therefore must use - * volatile to stop the compiler from optimising this away. - */ -#define FORCE_READ(x) (*(volatile typeof(x) *)x) - /* * How is the test backing the mapping being tested? */ @@ -582,7 +575,7 @@ TEST_F(guard_regions, process_madvise) /* OK we don't have permission to do this, skip. */ if (count == -1 && errno == EPERM) - ksft_exit_skip("No process_madvise() permissions, try running as root.\n"); + SKIP(return, "No process_madvise() permissions, try running as root.\n"); /* Returns the number of bytes advised. */ ASSERT_EQ(count, 6 * page_size); diff --git a/tools/testing/selftests/mm/vm_util.h b/tools/testing/selftests/mm/vm_util.h index 2b154c287591..c20298ae98ea 100644 --- a/tools/testing/selftests/mm/vm_util.h +++ b/tools/testing/selftests/mm/vm_util.h @@ -18,6 +18,13 @@ #define PM_SWAP BIT_ULL(62) #define PM_PRESENT BIT_ULL(63) +/* + * Ignore the checkpatch warning, we must read from x but don't want to do + * anything with it in order to trigger a read page fault. We therefore must use + * volatile to stop the compiler from optimising this away. + */ +#define FORCE_READ(x) (*(volatile typeof(x) *)x) + extern unsigned int __page_size; extern unsigned int __page_shift; -- 2.43.0