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 BBA4AC71155 for ; Fri, 20 Jun 2025 15:01:51 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 5FDEA6B0093; Fri, 20 Jun 2025 11:01:51 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 559066B0095; Fri, 20 Jun 2025 11:01:51 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 46EAF6B0096; Fri, 20 Jun 2025 11:01:51 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 2A9096B0093 for ; Fri, 20 Jun 2025 11:01:51 -0400 (EDT) Received: from smtpin16.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id C884C160D78 for ; Fri, 20 Jun 2025 15:01:50 +0000 (UTC) X-FDA: 83576093580.16.02A9A38 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by imf03.hostedemail.com (Postfix) with ESMTP id 9E3692001D for ; Fri, 20 Jun 2025 15:01:43 +0000 (UTC) Authentication-Results: imf03.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=fOUkdxor; dmarc=pass (policy=quarantine) header.from=redhat.com; spf=pass (imf03.hostedemail.com: domain of peterx@redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=peterx@redhat.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1750431704; a=rsa-sha256; cv=none; b=Fo+EZrwqyRbrTPU6ZmFJ9tcTexRAmv/oCqMxYHzE1RmtfqIbvM5tGhW4+9giN6oRcTh6NE NK8u9OpeCp8b0Sed7TcO2vMT/pUuxGkPsXqlzXiDW18OtNiYoC5TbRkfIl7J81Tb9gYf7U oq6E3EeJI1dRZLefQXGkCgHDOSBFH28= ARC-Authentication-Results: i=1; imf03.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=fOUkdxor; dmarc=pass (policy=quarantine) header.from=redhat.com; spf=pass (imf03.hostedemail.com: domain of peterx@redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=peterx@redhat.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1750431704; 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=7M76hqco3H5VT/KRuwIi+nGynG02bWulCQI/kQdG3h8=; b=FKftPX204CN9t7ilNpzAoADYnIfGBx2bn1xv6/iWpmKCuiSmkuEnlN9rDPjjGUOHuFFVH1 fnxy/mk1OED4TT4/n7m32+z+XPLSvKoZgx+VYgiWpeX867FT54LMEMbLyNMHT8nMUke6yb lewELzv6/yc2h5TQJwO3xrl5xeeyer8= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1750431702; h=from:from: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; bh=7M76hqco3H5VT/KRuwIi+nGynG02bWulCQI/kQdG3h8=; b=fOUkdxorOkPxo15Otv2tiUd8b7Lu3Nq2soreKkadT+6rmqwLlqJqpYc+mirxFq90y27a+n lY4kknvWdbsifEdcDxHUu5rBy+nV30wWPv9p/qDgGLxDWqadBnRf4oWyW2Ryoq7J13a08h ucod1yK3/2GQrZwnm9QEMkrLi/FwI2A= Received: from mail-vs1-f70.google.com (mail-vs1-f70.google.com [209.85.217.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-553-i8c4KZVbOEmgmei6hiJuzg-1; Fri, 20 Jun 2025 11:01:41 -0400 X-MC-Unique: i8c4KZVbOEmgmei6hiJuzg-1 X-Mimecast-MFC-AGG-ID: i8c4KZVbOEmgmei6hiJuzg_1750431700 Received: by mail-vs1-f70.google.com with SMTP id ada2fe7eead31-4e81374b177so372873137.3 for ; Fri, 20 Jun 2025 08:01:41 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1750431700; x=1751036500; 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=7M76hqco3H5VT/KRuwIi+nGynG02bWulCQI/kQdG3h8=; b=tyjIBVbVnIZsb81CMN6qP8FGcXvtoVt+iJ4t/rNiFohFnW+JHSlnxAoTrmlRWxKA7k fS8KRnp6baim1BA+rZmQIVMi3smK7Lswq45sWJ+ELCU/dc07zXkLlxTf+rxcMjkqRRbQ eyCKPoFC5uVCDe7Gjae00LAoD/lIhIPMMYCQcErigcN0J0tOvzLHGfs7rEfdShEuLfhu v7YD7gQzZOuZ68Btz3BgqQFTx6GLIT9bSt3a6Uai+9mCwPp2FAT5j2VCsCLDkFo0TjIH /ogjoyraYpDL2zt5r9WH1JjEDwR42xPLD0lCZP2DDxZ2SuVTfQgftMCZq0wDyyf9S9Fw Dt+g== X-Forwarded-Encrypted: i=1; AJvYcCXDRISGozr1oJWtRAKpcYD29mZmoYwXC89a95UuRvvUuHSA6zdW5PHTaZEocrinA6AIWeYKpzHq+w==@kvack.org X-Gm-Message-State: AOJu0YzU68WLQsYyGe4o0ShDZ1uzflxOWFpQpG3DhrWlDpnvO6cSD8V6 ep2D0rAHX9U4KHifykD5bQVo5c5vsYsnfA+NGIYosjhnrNWKcKgVZUoH1wOU/F61QOT6WrbQ1ur 7qcFPbBRtRLqSs8M17ira6rD89kx0ujetlNT+6jmRh4vbN8xLHoQiKoPY3OsV X-Gm-Gg: ASbGncsL3wUbjyhdw5PfJjZ+T9sjl0IAm0dJGD83/LbdTTPjEK8TuE3Chs8rEoyaWH4 cn+tJ6SwG6qNDZYFFvYg1ZlcxpYDpp7UoQpRPCoDcRNyvn5nTEbM5DqCS6lHV/S4qFS23sE0G2g 3e5kv+EmOB/bfRutp8zOamPYNA+7BtSF79juoDouoqD7ZSo/HxjUH7xhxElLisYB9GakqlSqTmM 0+O/FUU4fZa2s2sAUTx508aN9gSaneZiECynm5BZTiuG0vZgA/j8RriPQ6YKvl+H85YtD+pW357 0ox65Jhtrcw= X-Received: by 2002:a05:6102:504d:b0:4dc:81b7:f031 with SMTP id ada2fe7eead31-4e9c297b704mr1771245137.0.1750431700125; Fri, 20 Jun 2025 08:01:40 -0700 (PDT) X-Google-Smtp-Source: AGHT+IH4qEwMJ33zE9Sqd79sefUScGaIuWWM8E3d59dP7cNTO+z2hf353gSFuHf5UiYiJkG+YNg1RQ== X-Received: by 2002:a17:90b:1b11:b0:313:5d2f:54fc with SMTP id 98e67ed59e1d1-3159d64a4c7mr4866230a91.10.1750431665061; Fri, 20 Jun 2025 08:01:05 -0700 (PDT) Received: from x1.com ([85.131.185.92]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-237d8391574sm20688775ad.28.2025.06.20.08.01.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 20 Jun 2025 08:01:04 -0700 (PDT) From: Peter Xu To: linux-kernel@vger.kernel.org, linux-mm@kvack.org Cc: Andrew Morton , peterx@redhat.com, Ujwal Kundur , David Hildenbrand , shuah@kernel.org, Axel Rasmussen , jackmanb@google.com Subject: [PATCH] selftests/mm: Reduce uffd-unit-test poison test to minimum Date: Fri, 20 Jun 2025 11:00:58 -0400 Message-ID: <20250620150058.1729489-1-peterx@redhat.com> X-Mailer: git-send-email 2.49.0 MIME-Version: 1.0 X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: yanCi6AsDju7ZcwW4pAyyN9oNTzc7KnQ58e4pd748uE_1750431700 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: 8bit content-type: text/plain; charset="US-ASCII"; x-default=true X-Stat-Signature: tj5enekwrwetojys5iotdx9uymqd4cqf X-Rspamd-Queue-Id: 9E3692001D X-Rspam-User: X-Rspamd-Server: rspam06 X-HE-Tag: 1750431703-410012 X-HE-Meta: U2FsdGVkX18Bba3UOcAzMscOnRdZJ2ezleTrePSYDhRV/o+Ir7xHR9DsDRCdjCS8hg/lt6HiFRB0jE8NNogWeaPs2ktYsopk71ppxEev5kVBLLMx3I5iFBY6ZfQN3CgHmejr5ie76BElQMZqWreMJyDXB3XwuWbGyEAGx/N6gCjoNq1tRSzyMf6f27cBJyz+B5MWoes9zL/JQkdbqUM3TPWTeBQG/Rojr0bC/XQMMm11CICvCbNrPtgjD+pPNB3vYipmoME2ZN5p+V28rat0RdUyv3LizXVxX11Ge0JRZ3JI5HuCMIbPubIcJKOAYRvmYSqfPVP1k6vIlZOPd1jH1vo+DZGjGDvotZu5Vvckq3AO2JO5xnhV5ex0LxuUdyHYdtNTGfh7s44L2+jYKAgLaNxhlPRgYgXOKZNwW8WEh1GZJAcfE9FlCrgtthVtyi8g8S7U9SvSqkjODywhxjDCGJiVCb/O76ZrD6blyUGW0qATI2Qh3hpHtMQvQkzIDlFdjYF6s0XuxuOU7VPkSOSBVYR4pC/FEmh+8/QxNAbrC6794Mik1i+cp0D7sLub05ovNcTdvlln32m0yS2WosSxuH7XKRrzplsKE+kA+fnXcB9QZsNu/ACU0YPuaFQiAvGocngH6ao1pgO+yG3FdUunPHQnKFvXtC5HfZJMq00zRN+jeyfuPPlNCp+SgcLbaw3Y/TNCnRGvOq5+ldqZKO30fQm0frqyQQ3HhszalukfifqLCFesBILGWxbr/humSCJwZnBwLwqqHobF6hW/pDnU1gOZSkBnU+PZ9QrxyqRZWzbP6Vz7wxzDJ5ny4aljmBX29sFBboqHSEXrgX9dvvA0HBdH8qlaxiZy7UnYRWzhIrun1mz44xdO4m8GE1zGrxjOZjhdwORI6xUYcRj2vjIBGFBosNrx+0rTfLv310Yt9slThP3Wc8m8xboSvnKm+6cfhJ0hj06YnvCpmamxIEO gcwahM7b O8OY1WkJs2wkv7k9VXOmFt3/DzgnjPwamxyZBonVW/bXLro387UvGfwl/hZa5eYYFnriZTdPc1m+M3M8OVe6r3s+QND0IaQ60IMmMwU/GkpRxLU7ZLEuwUTlaYJTmsigQrRi7Cb6q0ZfpDH7r6Gg1CBAR9odt3WRwhnw9wZ4isPBLUDB70TdTr6z9qDMeSic75sBCdYNt3w6TI7VL1Mt5iergkqUEUHFWU/r6jZV8KpkXKIWDwRJQZNnMHOZ1Z84Uvn7K/9F21Qa0HOd1V6y438NOs7ejMemnl1d2+G7T1VsiNLg/bbDoWEOA0f7CEz4mCfdwyTiaXcrKKIRzG4gT+aS48fAuU3XaPMbvOQBB0iL5JxHyuSmFCJy/KIj3poCnlToOdzEykVbGWhlwvjWCjoRQT7p7jWFCSunq9F43HxhRapmRcTdpZwDg42jv5Jn17don2DFtU2nhkqdOKpFrer8o1Q== 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: The test will still generate quite some unwanted MCE error messages to syslog. There was old proposal ratelimiting the MCE messages from kernel, but that has risk of hiding real useful information on production systems. We can at least reduce the test to minimum to not over-pollute dmesg, however trying to not lose its coverage too much. Cc: Axel Rasmussen Signed-off-by: Peter Xu --- tools/testing/selftests/mm/uffd-unit-tests.c | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/tools/testing/selftests/mm/uffd-unit-tests.c b/tools/testing/selftests/mm/uffd-unit-tests.c index c73fd5d455c8..39b3fd1b7bf2 100644 --- a/tools/testing/selftests/mm/uffd-unit-tests.c +++ b/tools/testing/selftests/mm/uffd-unit-tests.c @@ -1027,6 +1027,9 @@ static void uffd_poison_handle_fault( do_uffdio_poison(uffd, offset); } +/* Make sure to cover odd/even, and minimum duplications */ +#define UFFD_POISON_TEST_NPAGES 4 + static void uffd_poison_test(uffd_test_args_t *targs) { pthread_t uffd_mon; @@ -1034,12 +1037,17 @@ static void uffd_poison_test(uffd_test_args_t *targs) struct uffd_args args = { 0 }; struct sigaction act = { 0 }; unsigned long nr_sigbus = 0; - unsigned long nr; + unsigned long nr, poison_pages = UFFD_POISON_TEST_NPAGES; + + if (nr_pages < poison_pages) { + uffd_test_skip("Too less pages for POISON test"); + return; + } fcntl(uffd, F_SETFL, uffd_flags | O_NONBLOCK); - uffd_register_poison(uffd, area_dst, nr_pages * page_size); - memset(area_src, 0, nr_pages * page_size); + uffd_register_poison(uffd, area_dst, poison_pages * page_size); + memset(area_src, 0, poison_pages * page_size); args.handle_fault = uffd_poison_handle_fault; if (pthread_create(&uffd_mon, NULL, uffd_poll_thread, &args)) @@ -1051,7 +1059,7 @@ static void uffd_poison_test(uffd_test_args_t *targs) if (sigaction(SIGBUS, &act, 0)) err("sigaction"); - for (nr = 0; nr < nr_pages; ++nr) { + for (nr = 0; nr < poison_pages; ++nr) { unsigned long offset = nr * page_size; const char *bytes = (const char *) area_dst + offset; const char *i; @@ -1078,9 +1086,9 @@ static void uffd_poison_test(uffd_test_args_t *targs) if (pthread_join(uffd_mon, NULL)) err("pthread_join()"); - if (nr_sigbus != nr_pages / 2) + if (nr_sigbus != poison_pages / 2) err("expected to receive %lu SIGBUS, actually received %lu", - nr_pages / 2, nr_sigbus); + poison_pages / 2, nr_sigbus); uffd_test_pass(); } -- 2.49.0