Message ID | 20250311-mm-selftests-v4-0-dec210a658f5@google.com (mailing list archive) |
---|---|
Headers | show
Return-Path: <owner-linux-mm@kvack.org> 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 CE03DC282EC for <linux-mm@archiver.kernel.org>; Tue, 11 Mar 2025 13:18:22 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id CB27A280002; Tue, 11 Mar 2025 09:18:19 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id C3B96280001; Tue, 11 Mar 2025 09:18:19 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id AB6DD280002; Tue, 11 Mar 2025 09:18:19 -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 8A39C280001 for <linux-mm@kvack.org>; Tue, 11 Mar 2025 09:18:19 -0400 (EDT) Received: from smtpin05.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id BD797C1EBC for <linux-mm@kvack.org>; Tue, 11 Mar 2025 13:18:21 +0000 (UTC) X-FDA: 83209324002.05.4D5E00B Received: from mail-wm1-f74.google.com (mail-wm1-f74.google.com [209.85.128.74]) by imf13.hostedemail.com (Postfix) with ESMTP id D50362001B for <linux-mm@kvack.org>; Tue, 11 Mar 2025 13:18:19 +0000 (UTC) Authentication-Results: imf13.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=VEYI3d8q; spf=pass (imf13.hostedemail.com: domain of 3GjjQZwgKCBE0rt13r4sx55x2v.t532z4BE-331Crt1.58x@flex--jackmanb.bounces.google.com designates 209.85.128.74 as permitted sender) smtp.mailfrom=3GjjQZwgKCBE0rt13r4sx55x2v.t532z4BE-331Crt1.58x@flex--jackmanb.bounces.google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1741699100; 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:in-reply-to: references:dkim-signature; bh=Y/V3ij2YZYBELRjrNa6UOH2HSQ/70gTUpUW2w6XjdEU=; b=cRjOek33Fi2jBJYfHtU91xJMSA/nlmwQ042VUzwfTEhRuC39udnsz4TSm2QO1g4pzt5e5J jklYdoTUuyJDDuLvtb7lD9swQ/tsHjOgINN0yEDYrjuUVeOcLxcgPTTNtZWUWD3Dndgfbe +gQsM8wmOMB0SJZP3QuNRz+ZetvGj0Y= ARC-Authentication-Results: i=1; imf13.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=VEYI3d8q; spf=pass (imf13.hostedemail.com: domain of 3GjjQZwgKCBE0rt13r4sx55x2v.t532z4BE-331Crt1.58x@flex--jackmanb.bounces.google.com designates 209.85.128.74 as permitted sender) smtp.mailfrom=3GjjQZwgKCBE0rt13r4sx55x2v.t532z4BE-331Crt1.58x@flex--jackmanb.bounces.google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1741699100; a=rsa-sha256; cv=none; b=1uqcV3XCdtRLAFPRLedtHUkzeEakh2lVHEpSKJARQkCBdg1plI78EoVBbr0xGZ3SBvn+E5 o03Bg9HzGlHdU0Ohd8qyyLQ72fQFnVWAWbciDQYfU5tI5ctHwSUAdl154ceZcuFwwJLV9r CZajdI+v91/T0tWijPrurvmf/J6kCZI= Received: by mail-wm1-f74.google.com with SMTP id 5b1f17b1804b1-43cf172ffe1so21725445e9.3 for <linux-mm@kvack.org>; Tue, 11 Mar 2025 06:18:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1741699098; x=1742303898; darn=kvack.org; h=cc:to:from:subject:message-id:mime-version:date:from:to:cc:subject :date:message-id:reply-to; bh=Y/V3ij2YZYBELRjrNa6UOH2HSQ/70gTUpUW2w6XjdEU=; b=VEYI3d8qE19uQYiSJjfluLfewHp/hgrIN1cva76fwlX6DoByM/jzpplaqaAmmr5m5c Z2cjGH6F3QsuXmccJfUdChY1chG3YHLB0KKuF7h+rVb0PTCSciGwRz1n1PTnzHjDpYb6 JK5qNXRm2HiFuYShNNS664x2XPAtZXyVBePL+kGUS5Fz+UUym9wXSSGs+mqfZJT75M+Y mRz2A2cHTr2Qkd58IJ0JsjraxPWM9qxRGEgeOoCUIEobax/KzDaUc+H+pEdebJtgC+mP 6yATLM1Kj57qEa/CXhrZqxMB9AS8mZL3iVpkxP2zslIXnoENzeMW5kNFzUr/jFZWP69O dt7w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741699098; x=1742303898; h=cc:to:from:subject:message-id:mime-version:date:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=Y/V3ij2YZYBELRjrNa6UOH2HSQ/70gTUpUW2w6XjdEU=; b=WVSksfetNeGQAwvx8QSJB93bdZurrFcbLeGtY1j67nJtN7oYsPN4i4Ebl0MY59TUei FBedG3qdoBmVdb+sjMwe+m2B0WLBdsRpY9ezq3QL3YyL0weKS7kfjrv4sPRjwgntHDA0 iQUsQ9SvvcFOWmWJ2c4CB1OLnKn/CRga9Ac1JldT7bhnUZSAFtrHGe883QL6vXEv9zaG YjMC53+Oa1wmt3sUnWRou34fIbjdjaupKybV4p4zobS7Sl68zEWVYfnpa0H3ld7drmqF +C5rIdRVNz+ifOb/TNVtTNkAgKvmSSWGzioIE9Ya51FnW1kla42AN4W7QdYSxz1pSPcd vDDg== X-Forwarded-Encrypted: i=1; AJvYcCUybmE2I0ksfZpsBudVBxAz0l31Tjw0YjTz9DZ8gaiCSfgsnu0LcAbp9GnesovMe9lxMHtt/00Rsg==@kvack.org X-Gm-Message-State: AOJu0YwNvJTc3I/B+rFMQdBuB6vmgyrOplQRIe6gr+RXerY3w889Pdb5 gxH0o8VhTnsFmcM2Rbk6OvvYIvfzny9JBTNPvuzyCnLHCk06zwgxc/0rfQzzoezJP7JT8MmRAWB 6qX0lXKVUVw== X-Google-Smtp-Source: AGHT+IEdpBmFLHqg0EwNWaYJjDN9PewywJgWEJo/obnFlbCutpR2jQdlCSgkfmSa3XZZhJ1mYrZR1WEEKTY4zw== X-Received: from wmqc17.prod.google.com ([2002:a05:600c:a51:b0:43c:f5b8:aad0]) (user=jackmanb job=prod-delivery.src-stubby-dispatcher) by 2002:a05:600c:1d1a:b0:43d:3df:42d8 with SMTP id 5b1f17b1804b1-43d03df4496mr34621635e9.6.1741699098504; Tue, 11 Mar 2025 06:18:18 -0700 (PDT) Date: Tue, 11 Mar 2025 13:18:11 +0000 Mime-Version: 1.0 X-B4-Tracking: v=1; b=H4sIABQ40GcC/3XNTQ6CMBCG4auQrq0p0x/QlfcwLqCdQhOgpiVEQ 7i7hRViXH6TPO/MJGJwGMk1m0nAyUXnhzTEKSO6rYYGqTNpE2AgGQCjfU8jdnbEOEYKpjBMCrC VRpLIM6B1ry13f6Tdujj68N7qU75e/4SmnDJ6qWsrC6OEUPzWeN90eNa+J2tpgr3ODxqShlILo xQvuZY/mu91edB8/S1L5LWyDNj372VZPqv0VHIlAQAA X-Change-Id: 20250220-mm-selftests-2d7d0542face X-Mailer: b4 0.14.2 Message-ID: <20250311-mm-selftests-v4-0-dec210a658f5@google.com> Subject: [PATCH v4 00/12] selftests/mm: Some cleanups from trying to run them From: Brendan Jackman <jackmanb@google.com> To: Lorenzo Stoakes <lorenzo.stoakes@oracle.com>, Andrew Morton <akpm@linux-foundation.org>, Shuah Khan <shuah@kernel.org> Cc: Dev Jain <dev.jain@arm.com>, linux-mm@kvack.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, Brendan Jackman <jackmanb@google.com>, Mateusz Guzik <mjguzik@gmail.com> Content-Type: text/plain; charset="utf-8" X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: D50362001B X-Stat-Signature: mby7rhj7ib383a9msfgaakut4ef9idp9 X-Rspam-User: X-HE-Tag: 1741699099-870420 X-HE-Meta: U2FsdGVkX18yGMCXfaPR59wFKfNj4tIptJNhBp2LgLEiYvCw7TnbkvEhtcwym7A0olK0Y3GqeNpzU/a6j3kDvw4ySpvSUV8dkZ8H6yxNGYfEWIBX0zH4mRp2+1CViwk84yQTGvuvIC0MWFiDQyg7175h63RAl3Wp6CLYQXpkA5h1niQ9lAk/CIlzRIfTGlYCeUSHzUgZsdHE0ird9qRIzlx619RbhtHSryIDaNe89V3o1zTZ+m+MUkXC3FgK+PZTA/+D/VUt+IaY5wtA8MUJKgCyoOXIsuYzSzviu9PktPsCcDJX+NRESAEkmtka9q6HuN9nodraqmqMGbPyGDeOF/O8CeS6s8XxOOBKFEFpnIlVhYd5O0y/cVjVVB+aAAa+a5acYlaHuHhGABVGobDfXVkd2KhaCIGqzZxtWMBJVg8iGbjd2+oNYmaWbmZktrJRTZWrXmGefqsQowHRyzUrRHTi3r4f4HhTxO0XmY3uFxznKKBEOnVdlryED8+EXppt7L3RLGJv43PpMm9itXtXPUayIYnhQZQqzUw6U+cxMtapEPpgeG10L64azMeV+OpRe4iaWRv61+rSbUqHfxdEjWT1oseksYsTWlhbnDsKpVqP8x3w62Gj/rPwxvJUm1ukrRTVINN/ZEBfnmQ6uj+51BA5I2mlPCHtgzjuXa+W9w3pluM0aaf6Q1OBSbrt7infTDlby2kS5zCeQT+wFywrj12yswl6ZUHnf7HN+kOYDSu1LIyNbI1iWoy4COL/rbOeHhmRH2pDeRhGWXcmtIPV5Kind7s0WhYMYpSaKcsqO9APC5Tzw2nPBoK6pfGIuUpe3FFyTNdAf1rxdS2D4bDqIE0xzbHGN+AGfQIfR+t00XaC/bYqSOYO49YQynSBoK+r/Dv/FUkMprnpf3BZOW7R6NLa+TyHBIXtl8m4QecMoZtWT0CUIXOJOyDsccgZ+Zp/BLU1sadwN7Co+7pzTpZ Mm5Vi07q BKwRhmcFCzwnyCbo1TmsRPnNbjt9WDNpgbdcd58Fst+KbRWqhmg9xtGg/0ruzX9zBzYSEpNCkhduoYlEj/qd2qQEbyJcPGLGp7SaBK4tOA8nxPr+1vrO4LqJlC6zwyhhPzD8eL3126m3C/uP4IgthCTzk1fj0lbJho86NXMs0IyRNCqb6Hqv0GhLt4ZkasiHxgVVl1h09vOfGabAefWyG0Mk3ret+8Zxiv1o0Uc2K6g/QuN3SURKLPyB7JlZWObFMyb4cdfbm4g3SaantmL26YuGaggGPRa3m7/IIs0DQDuiJXmlgwTIfeSkxksz5mrkTK7/zJm2GZ0K++SRpH77ZmNjxYjPX9LqyNnW4eTj+Ja7nIQlLKuSiXMnNmZi6+hg7bRIlehWLZsdY/D/7NUANDD/TeloebGtvoos02Jm1kajcOywJhO3DrZ5j51g/74rO6yCPCgW+a91LFTHP7Nem1M9xXmxgFNpwUKt2eKASLTd7JrhJrrmY1Uq78U7Byum5efK3xxhPsUPauTCQFCp+cAfUENWoCI2EueD+o2KI93L0XjWeGoNRJOzIm8uEg42kBLRQUK+NhLG1VZtrNloU2BalFN2bApH+1vlmT6wHqKYwP088knl81nARzw== X-Bogosity: Ham, tests=bogofilter, spamicity=0.007518, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: <linux-mm.kvack.org> List-Subscribe: <mailto:majordomo@kvack.org> List-Unsubscribe: <mailto:majordomo@kvack.org> |
Series |
selftests/mm: Some cleanups from trying to run them
|
expand
|
I never had much luck running mm selftests so I spent a few hours digging into why. Looks like most of the reason is missing SKIP checks, so this series is just adding a bunch of those that I found. I did not do anything like all of them, just the ones I spotted in gup_longterm, gup_test, mmap, userfaultfd and memfd_secret. It's a bit unfortunate to have to skip those tests when ftruncate() fails, but I don't have time to dig deep enough into it to actually make them pass. I have observed the issue on 9pfs and heard rumours that NFS has a similar problem. I'm now able to run these test groups successfully: - mmap - gup_test - compaction - migration - page_frag - userfaultfd - mlock I've never gone past "Waiting for hugetlb memory to get depleted", in the hugetlb tests. I don't know if they are stuck or if they would eventually work if I was patient enough (testing on a 1G machine). I have not investigated further. I had some issues with mlock tests failing due to -ENOSRCH from mlock2(), I can no longer reproduce that though, things work OK now. Of the remaining tests there may be others that work fine, but there's no convenient way to survey the whole output of run_vmtests.sh so I'm just going test by test here. In my spare moments I am slowly chipping away at a setup to run these tests continuously in a reasonably hermetic QEMU environment via virtme-ng: https://github.com/bjackman/linux/blob/5fad4b9c592290f38e0f8bc73c9abb9c99d8787c/README.md Hopefully that will eventually offer a way to provide a "canned" environment where the tests are known to work, which can be fairly easily reproduced by any developer. Signed-off-by: Brendan Jackman <jackmanb@google.com> --- Changes in v4: - NOT ADDRESSED: still using errno==ENOENT as a hacky way to detect buggy filesystems: https://lore.kernel.org/all/CA+i-1C3srkh44tN8dMQ5aD-jhoksUkdEpa+mMfdDtDrPAUv7gQ@mail.gmail.com/ - Added some incomplete cleanups for the mlock tests. - Fixed divide-by-zero error when running uffd-stress on <32cpu systems. - Fixed misnamed nr_threads variable (now nr_parallel). - Fixed reporting io_uring errors (retval instead of errno). - Link to v3: https://lore.kernel.org/r/20250228-mm-selftests-v3-0-958e3b6f0203@google.com Changes in v3: - Added fix for userfaultfd tests. - Dropped attempts to use sudo. - Fixed garbage printf in uffd-stress. (Added EXTRA_CFLAGS=-Werror FORCE_TARGETS=1 to my scripts to prevent such errors happening again). - Fixed missing newlines in ksft_test_result_skip() calls. - Link to v2: https://lore.kernel.org/r/20250221-mm-selftests-v2-0-28c4d66383c5@google.com Changes in v2 (Thanks to Dev for the reviews): - Improve and cleanup some error messages - Add some extra SKIPs - Fix misnaming of nr_cpus variable in uffd tests - Link to v1: https://lore.kernel.org/r/20250220-mm-selftests-v1-0-9bbf57d64463@google.com --- Brendan Jackman (12): selftests/mm: Report errno when things fail in gup_longterm selftests/mm: Skip uffd-stress if userfaultfd not available selftests/mm: Skip uffd-wp-mremap if userfaultfd not available selftests/mm/uffd: Rename nr_cpus -> nr_parallel selftests/mm: Print some details when uffd-stress gets bad params selftests/mm: Don't fail uffd-stress if too many CPUs selftests/mm: Skip map_populate on weird filesystems selftests/mm: Skip gup_longterm tests on weird filesystems selftests/mm: Drop unnecessary sudo usage selftests/mm: Ensure uffd-wp-mremap gets pages of each size selftests/mm: Skip mlock tests if nobody user can't read it selftests/mm/mlock: Print error on failure tools/testing/selftests/mm/gup_longterm.c | 45 +++++++++++++++++--------- tools/testing/selftests/mm/map_populate.c | 7 ++++ tools/testing/selftests/mm/mlock-random-test.c | 4 +-- tools/testing/selftests/mm/mlock2.h | 8 ++++- tools/testing/selftests/mm/run_vmtests.sh | 27 ++++++++++++++-- tools/testing/selftests/mm/uffd-common.c | 8 ++--- tools/testing/selftests/mm/uffd-common.h | 2 +- tools/testing/selftests/mm/uffd-stress.c | 42 +++++++++++++++--------- tools/testing/selftests/mm/uffd-unit-tests.c | 2 +- tools/testing/selftests/mm/uffd-wp-mremap.c | 5 ++- 10 files changed, 105 insertions(+), 45 deletions(-) --- base-commit: dcb38e6757f1b7944af9347ce6b54263d3666478 change-id: 20250220-mm-selftests-2d7d0542face Best regards,