From nobody Tue Sep 29 10:31:59 2026 Received: from mail-wr1-f48.google.com (mail-wr1-f48.google.com [209.85.221.48]) (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 B90A92E401 for ; Sat, 8 Aug 2026 20:04:36 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.48 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1786219478; cv=none; b=Z1buVClgvYPdrRleo964OWChdtBfnA9PoCa9Qa4t0H6EUQP1hHcQ4krFyP7yQeWoW+09FBNANWDF3AKEpT0ZnCnavU1wBeUsoF3iuS4EJB65Ltp2okIeRwmPmkp1kw7pydQQXy+Gih//v1aCWWWGD1t85tTux87EGTNFojpbRkI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1786219478; c=relaxed/simple; bh=LlH0TC1nAkRMBmXknw3v23nVN/4enwHto4egCDkbd4Q=; h=From:To:Cc:Subject:Date:Message-Id:MIME-Version; b=t0EybhfAOfKYk6mzHNbQ8rZmR3wHayk0fHQirEQVYDfBcgQTHTzXQseBexjWMYU+kSgqLC6O+psQ4JEpU4CdV3gBFIrhPGn9iu/XP6lOKHe+f3BZibEoCKYMFWgV5kkQeZT6kQLE8C+sVhZMjjGWYYXWXAZZdBA8P1XfHg2X8SU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=oEP2dTJi; arc=none smtp.client-ip=209.85.221.48 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="oEP2dTJi" Received: by mail-wr1-f48.google.com with SMTP id ffacd0b85a97d-47f6609c657so273004f8f.2 for ; Sat, 08 Aug 2026 13:04:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1786219475; x=1786824275; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to:content-type; bh=FTWOCf3x+WMKSnT7DYKaYqLrpreFxQU4MBSEOLxHycI=; b=oEP2dTJiXcPnbYHB1ufP5ggp8uuXRFzA+xQkSfKl3UGFPZ3sFsV49brI82CY0ziwF5 l0RxQKzCfSxAJ8BhZNYjbH9VfQRO5+4WZEHbeEdMiIMvCDwoMnQh+v0eq2ElZViwhQW5 wAjArZmBgUbn/rso0rgXLdcmudE48QsdDUI2Az875bqcPDIGbDOKOK754C0ODMCTHiL+ pYn0uUF99PkhaXZQu3RG9Nix/2Hd9ZrrLnsbxOuLTT7E/qpECcHz22arJQfUvIm3jlT2 0hGHRyeS7UAJQkgTtjCJfhsWejOc6Se4EpWPsT1ycVCTlg9rjSnM1txCK9KgDnZ6GnDB +aDA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1786219475; x=1786824275; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to:content-type; bh=FTWOCf3x+WMKSnT7DYKaYqLrpreFxQU4MBSEOLxHycI=; b=KWWboTU7UPX2VnqJRfIKMrSTd6PYOBu7rgw/yE5MrQXpD3POEVbLB7Ka3na/ZPZLfp iERKgXs4W6vvttQpTqZ0pYXrd3nQ3cyiAGb08W+3kWgbQjJlo0HknW3Q7C5M2yJmaJFT yQzgucZ82hGuzadKQNez/HJGqfj5yYCQ+RbKjCnhLPlOBoSfVYcMbz23csHT4b44Tdr5 OsQvhme7Vw3tYfrAidqQcvOQDT1nhacZx98vlxy9Mi46IBaCjmbrIOaqeWdxW0V5XCdi +cyhiLVRT/nyLmZJEDYa9BU/CrTJCL1tliSR1+ax1KxtvgQmcmGIRI81L+BButb+vy7V YSgQ== X-Forwarded-Encrypted: i=1; AHgh+RqMZ9wBbG2AHpAI99gEx4YDA42t86mafFYiOJQqC4Az07mrumFM3ef9eeJVx+2hhnsfLyuBCvXDBv9ZeNk=@vger.kernel.org X-Gm-Message-State: AOJu0YycAq0mgyhm7/ukWUHvJV930WdznVYJqvuivttfIqrpZQzZ39hJ ZSLCqjVrRzRoYJyKPCL+DsQ39R5/4WLpDof3sDe5C0ZRKY33Ojfg76lB X-Gm-Gg: AR+sD12IpKKYVUDsKy6rXkhdNawfDERqKZOvTtUSY572gEwyuObl8I07SSEU+MxaIXj NuIqlyUZNjGs7Ml/F1yYVlmMyLo9EZh93yUFm+xQUVelDGuAslAO+TUbyLKHwyrAdNUG06BFFVs xNdk3Sxdx1VUj+Tdx95v38IbUlzcNAQSGW/G0n1ypHCx+WoNEtirXTDSXjXDeHDBxXObh+CCwA/ wYgyaYMAJiLfGTIcWAb1M77084VQSnhg389hE5Bwr3XbYgCscKiAjEJEk7um8tdy0IeV2zt5mXB mCgxDcZvMKygbU2vFHlcoMd7HdaEbynePl/f7nNASVouq2j0Lu2cnbvuTKlvn43eRImM3iY8T6L jrIsG917xMKcx6J8BkzAJeab2fmtsJEw2UkznFB1WdC0cqFC6psGFb/jtqM/EvcRal5Z2g/1JhM Emb1qKQeTf2TKtB/bIuy8EIwpR3wwWIMLcgQPabPfLCJSpKgWqVyjJOPrtNd9TH4GWx0exbt07O XRkIVpt2pp633wUK5hgFoGlPhZB/2DkFPeqP4nWqaaNYZjVSSNRuFszk8GVaqnHGzd0ENMg2zuY OYoLiquzN5LtHn7w5kA3 X-Received: by 2002:a05:600c:6612:b0:495:4811:7998 with SMTP id 5b1f17b1804b1-4995e0ebf84mr186829685e9.17.1786219474873; Sat, 08 Aug 2026 13:04:34 -0700 (PDT) Received: from localhost.localdomain (dynamic-077-007-004-134.77.7.pool.telefonica.de. [77.7.4.134]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4995919df87sm196278975e9.6.2026.08.08.13.04.33 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sat, 08 Aug 2026 13:04:34 -0700 (PDT) From: Karl Mehltretter To: Andrew Morton Cc: Karl Mehltretter , Suren Baghdasaryan , "Liam R. Howlett" , Lorenzo Stoakes , David Hildenbrand , Vlastimil Babka , Jann Horn , Alexey Dobriyan , Shuah Khan , linux-mm@kvack.org, linux-fsdevel@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v2] selftests/proc: make proc-maps-race work with READ_IMPLIES_EXEC Date: Sat, 8 Aug 2026 22:03:12 +0200 Message-Id: <20260808200312.6326-1-kmehltretter@gmail.com> X-Mailer: git-send-email 2.39.5 (Apple Git-154) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" test_maps_tearing_from_split times out when READ_IMPLIES_EXEC is set. This happens by default on pre-ARMv6 CPUs, which lack no-execute support. split_vma() re-maps the first page with mod_info->prot | PROT_EXEC to make it differ from its neighbours. With READ_IMPLIES_EXEC the original mapping is already executable, so no split occurs and the test hangs waiting for the modifier child. Use PROT_NONE for the split mapping, which always differs from its readable neighbours. Fixes: beb69e817246 ("selftests/proc: add /proc/pid/maps tearing from vma s= plit test") Assisted-by: Codex:gpt-5.6-terra Signed-off-by: Karl Mehltretter Acked-by: Suren Baghdasaryan --- Tested on: - QEMU versatilepb/ARM926EJ-S: maps and smaps fail before, pass after - QEMU realview-eb-mpcore/ARM11MPCore: maps and smaps pass before and after Changes since v1: - v1 went out without any recipients in To: and received no reply in 19 day= s. - No functional change. reworked the commit message. v1: https://lore.kernel.org/all/20260720061835.6290-1-kmehltretter@gmail.co= m/ tools/testing/selftests/proc/proc-maps-race.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tools/testing/selftests/proc/proc-maps-race.c b/tools/testing/= selftests/proc/proc-maps-race.c index 1026d8c400e1..415eccb70468 100644 --- a/tools/testing/selftests/proc/proc-maps-race.c +++ b/tools/testing/selftests/proc/proc-maps-race.c @@ -490,7 +490,8 @@ static bool query_addr_at(int maps_fd, void *addr, =20 static inline bool split_vma(FIXTURE_DATA(proc_maps_race) *self) { - return mmap(self->mod_info->addr, self->page_size, self->mod_info->prot |= PROT_EXEC, + /* PROT_NONE differs from both readable neighbors. */ + return mmap(self->mod_info->addr, self->page_size, PROT_NONE, MAP_PRIVATE | MAP_ANONYMOUS | MAP_FIXED, -1, 0) !=3D MAP_FAILED; } =20 --=20 2.53.0