From patchwork Mon Feb 24 14:47:12 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Brendan Jackman X-Patchwork-Id: 13988327 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 056AAC021A4 for ; Mon, 24 Feb 2025 14:47:36 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 705196B00A1; Mon, 24 Feb 2025 09:47:35 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 68D8D6B00A3; Mon, 24 Feb 2025 09:47:35 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 52DBD6B00A2; Mon, 24 Feb 2025 09:47:35 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 2F2366B00A0 for ; Mon, 24 Feb 2025 09:47:35 -0500 (EST) Received: from smtpin13.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id E0F7C1612E6 for ; Mon, 24 Feb 2025 14:47:34 +0000 (UTC) X-FDA: 83155116828.13.F2666AE Received: from mail-wm1-f73.google.com (mail-wm1-f73.google.com [209.85.128.73]) by imf14.hostedemail.com (Postfix) with ESMTP id A9D32100012 for ; Mon, 24 Feb 2025 14:47:32 +0000 (UTC) Authentication-Results: imf14.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=nZfZc38x; spf=pass (imf14.hostedemail.com: domain of 3g4a8ZwgKCMYvmowymzns00sxq.o0yxuz69-yyw7mow.03s@flex--jackmanb.bounces.google.com designates 209.85.128.73 as permitted sender) smtp.mailfrom=3g4a8ZwgKCMYvmowymzns00sxq.o0yxuz69-yyw7mow.03s@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=1740408452; 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:in-reply-to:references:references:dkim-signature; bh=GCHGbSH5u71x3rPQwLU8VHf0HNWJtt0XTaDImu1fyhU=; b=lcX93/P9DsJxDhNHWGeIRCFKTDvYD08o1gdnzCWTu9OKU2k+FwmC5qaEc3/XvtjhEWlmQy 1paQd0ArGLpi/pzINcWmCXxdaz8y2Axt9fhU47nqGDyLW/xfHMg8nI/Wvd0RCs+CD0/ErM WzwJcq7Sf3u5BNkCQbRXoMAY26+2EFI= ARC-Authentication-Results: i=1; imf14.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=nZfZc38x; spf=pass (imf14.hostedemail.com: domain of 3g4a8ZwgKCMYvmowymzns00sxq.o0yxuz69-yyw7mow.03s@flex--jackmanb.bounces.google.com designates 209.85.128.73 as permitted sender) smtp.mailfrom=3g4a8ZwgKCMYvmowymzns00sxq.o0yxuz69-yyw7mow.03s@flex--jackmanb.bounces.google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1740408452; a=rsa-sha256; cv=none; b=2Y6yOV3kakW+zVKkDDnfRRkE/RUysQrJCXBh084SAaNTjnJ95pvGa0DttAuLXf6EqCR51q E7YThGWXBFB2kNUdr5wEuCoktnJFs8wVc0MMOJH9dHRECzuGJuLofO48174h6Xsmr63AF+ ONyzF1L2MJfHfUE8wY17/8lkR1trtW0= Received: by mail-wm1-f73.google.com with SMTP id 5b1f17b1804b1-43943bd1409so31780265e9.3 for ; Mon, 24 Feb 2025 06:47:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1740408451; x=1741013251; darn=kvack.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=GCHGbSH5u71x3rPQwLU8VHf0HNWJtt0XTaDImu1fyhU=; b=nZfZc38xzhuKn8r3Av95h757GURuPj7tIYAaCJ8n9T4EQWcA3GlPSUTernW1FX+DQH rJmuBQJEOViYIuvCl3G6eROsp/XZg3lvkAwwB7PzdeWNIpNYYZJE0fq2a+eMan4dFESJ rRVccpeEzeStqcIpdMKpDxja7UZyuIhEKm9/kCGJg98qKe7M4xh8eF2aJaLyxHQLyIim hYn5mkvIyKlF5uKINzDekewzK/xWvLm3lMXXyRRqHTD8Lv9nKTaVgqbGDuRmWanSIoV3 bQgB1xoNf3BGO8PYcjz+2pX7PGOpuAXGln1oqwG/dALdWxjb9BedFsZHWE62rESY0lzF a8fQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1740408451; x=1741013251; 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=GCHGbSH5u71x3rPQwLU8VHf0HNWJtt0XTaDImu1fyhU=; b=IzOnAC8NNsDXkGX/IkBH2HUGf9Mgh2REzzRMkNZdur7zTfwJvmWv2jYkEGIescJQg3 fxBO+FDUHUGeZO7reqaKa9K/hXVwt5Wf0VGTgcOQM0dxtyDoTQ2u7d7YQCztZ4idHOMK wR1T31W4Z65tR/9R+uhsdZ1XI3482G0e0UUiwu7ITijRE6z8kQuRFVSFEGL0KBdrLnhL wc/pYPsP8r9eayj9UNxMclECWCK7PM/aX+taL3l1+c25PeHQvXmsUtc6Z1pOr1TlxlpN 74kZl6xh05JICTWCVYz26J92Q6wrdvnai1AX8UkPYF/mvEIfj4W1n3jFHkfca8hQj5Zf WmOA== X-Forwarded-Encrypted: i=1; AJvYcCVC2mv0l6ynWLV2oI4IYJrcNEY6LbxKfk86n/je3vfFu3TD5bbo7lduWYfEKbwY+bO8pF8jniysOw==@kvack.org X-Gm-Message-State: AOJu0YxTwjNo90rh/9dg5nMlLLvFiXiOI1vXVUNvT54dQsL2IHgSnWXk rfr1vubiOH5IEQyE0+fDFk3MmPhvO5P6zFcahSIurF22yu6nmR2W3Ks0SZZ8sgXr7JVattNEaCd +BNFvCYWHeA== X-Google-Smtp-Source: AGHT+IFwIHbdkreZNxpIcvirfoEEWXDLZ8e9Qs1I57U8z8tdFzGqrcazUy7/EH9Qq/dKoOv0alrn0GIwiDqq/Q== X-Received: from wmrn16.prod.google.com ([2002:a05:600c:5010:b0:439:846f:f9c8]) (user=jackmanb job=prod-delivery.src-stubby-dispatcher) by 2002:a05:600c:4fd3:b0:439:9543:9488 with SMTP id 5b1f17b1804b1-439ae2196a6mr90807405e9.21.1740408451368; Mon, 24 Feb 2025 06:47:31 -0800 (PST) Date: Mon, 24 Feb 2025 14:47:12 +0000 In-Reply-To: <20250224-page-alloc-kunit-v1-0-d337bb440889@google.com> Mime-Version: 1.0 References: <20250224-page-alloc-kunit-v1-0-d337bb440889@google.com> X-Mailer: b4 0.15-dev Message-ID: <20250224-page-alloc-kunit-v1-2-d337bb440889@google.com> Subject: [PATCH RFC 2/4] mm/page_alloc_test: Add empty KUnit boilerplate From: Brendan Jackman To: Brendan Higgins , David Gow , Rae Moar , Andrew Morton , David Hildenbrand , Oscar Salvador Cc: Lorenzo Stoakes , Vlastimil Babka , Michal Hocko , linux-kselftest@vger.kernel.org, kunit-dev@googlegroups.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, Brendan Jackman , Yosry Ahmed X-Rspam-User: X-Rspamd-Server: rspam11 X-Rspamd-Queue-Id: A9D32100012 X-Stat-Signature: jqeoxa8fqub86tsy4zr56joj666t8sxg X-HE-Tag: 1740408452-815493 X-HE-Meta: U2FsdGVkX18Hk5+nAR6hImNcbC/vLjiPnF4FJ6EsiAZqWhrOwciBsSDlLqT43AIFI2JWgPGqV7Upva6aHgYHnoywccrW/l79q2DFBizbOQY86HnnLO3V1Fx0OgkSv8T5TnCj8ufu9TD7tZnlW0CRQG1SCFCqg/AFu0N5qIonn6inBByN/OGo5NfBhqd3OgijtLR0xe6Dxs9N1F4QA3niyWiboC+NxksBu0j3uhrGHfDO7Bt1hn7M75fAF1PvVK1lyO2y6JdxO5J62B5Y8B9LHxgOzKOQoSsBvT2TexUiIvZiS/jqoKxLGDPDBC8CVAcrWNGS+8XGp8PTL25+WBuj1aQIK4RpYhQicLIaTYMSku+xF90dQCcYgYFaGY5CITDNT15Yus6puUiDY+d2JaSrPHCW8W3fW6X2jW1twKyY9DqwJAlT5mpgC+Tl2rjl0Hn/f4fejusfTjfXz7MrEpcY92ixRxP3kVP/PvK18BAGXsFMbseMdXOjv+vQcrvUpRZ6qCv1FDIb8fmpU4DE99gOWmAWYQfXiUARU3yjMd+M4AqHnHbs9dyMtZaXOPuWeVhUIS7pka7aSNRnr/Y1x0i+OcQd5Yv8qjMLRi3okKpNRrbDvjbrmW57OCH8wKWgH8kXwYu+jVtEQu1zxfxxVf50zfpW8H+51SOHT4HElhNfAqxHjtJAXgid+zgrNfVy6kSn2wQO4w//jKAXzo7/MWzi97s1vORyvZLOBk9d+EjIj0fTHLNo6TBsAF7VlOyIpiHqEOmOe+f9Q2bUbnLsDARWWKCZWBL03NaXJJhBpDRN3Wb2E/AvctOAa6bgOgHpNkHrT5XLQArDVESSMdGBhw0GuGHFxFdoHKDa7ZQdp79VvOP7ZDSoFGPr75f63F/zdVr8q+anNNwP4Po95Nqe9v5x0sHbS7D0XDuBRgLbV/Krt2SllmBghu69AHZ3syyxWNKBmCGu0u8AvZkhXQlwQdc MuxMhOvs bnJK5uZvY2cq8mEGOGAW1xAo3qym3hfniyZuRGfSDQ90bMb3q1da7UzXyPM+9PTqMTW/zNBeW4Fage/gBtGT+5eXAmrlbwcEtHSHUdQRZdN2jnIOEmFj4nzPjN//w0yAJppllZWgm/BM5HxHephPcNW9CJjrI0/vrP9LCojKTCVi29xJb3t83+vpJfY5RNOIYoWcaW1HbzTlteAXTk/gSVhA1y3CpYzGHAgbsHsSf8Wx0BASs5lgXJdEoiei+ON2xNttLD8caIq10XZR50e8eXUZd6VuaV7MMKCKMmltp5vO4mLWgbjolmRd+1OYRIOOep16TrcairZvJTBBwPSF+gTAUMk7RlHhHwZRn4OznHQEEHUWk6nYAG+uCGs+r0VIidIDATvAfJg1VBmvSpSVLBxxvJx451ZFtPQTYePHO5j6xxeIb8jq7lBQOJXhOUONyDhmdu9Vip0TWSSuFFhbQ7yhnNB3RBeegA7jIRR0KIvjvw8i7heJAZS2lFp7hUppWpIpDy+9TZeeA6yLvf0HJMk7M4SCYPnGbGhZVKkn49kI8GLtVFwSFLVeJ+THGSgJxr1NUbcT9eHq/oVJUEKFG1o6nPamWuWCbwHxTn+MR+C3S6v2Qadaz5YjCfX4OniUKZnIA+SU/e0J9JLc= X-Bogosity: Ham, tests=bogofilter, spamicity=0.040364, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: Add the Kbuild plumbing to create a new KUnit suite. Create the suite, with no tests inside it. Signed-off-by: Brendan Jackman --- mm/.kunitconfig | 2 ++ mm/Kconfig | 8 ++++++++ mm/Makefile | 2 ++ mm/page_alloc_test.c | 21 +++++++++++++++++++++ 4 files changed, 33 insertions(+) diff --git a/mm/.kunitconfig b/mm/.kunitconfig new file mode 100644 index 0000000000000000000000000000000000000000..fcc28557fa1c1412b21f9dbddbf6a63adca6f2b4 --- /dev/null +++ b/mm/.kunitconfig @@ -0,0 +1,2 @@ +CONFIG_KUNIT=y +CONFIG_PAGE_ALLOC_KUNIT_TEST=y \ No newline at end of file diff --git a/mm/Kconfig b/mm/Kconfig index 1b501db064172cf54f1b1259893dfba676473c56..1fac51c536c66243a1321195a78eb40668386158 100644 --- a/mm/Kconfig +++ b/mm/Kconfig @@ -1358,6 +1358,14 @@ config PT_RECLAIM Note: now only empty user PTE page table pages will be reclaimed. +config PAGE_ALLOC_KUNIT_TEST + tristate "KUnit test for page allocator" if !KUNIT_ALL_TESTS + depends on KUNIT + default KUNIT_ALL_TESTS + help + Builds unit tests for page allocator. + + If unsure, say N. source "mm/damon/Kconfig" diff --git a/mm/Makefile b/mm/Makefile index 850386a67b3e0e3b543b27691a6512c448815697..7b8018e0e6510881fac6e4295fdd1472e38d743d 100644 --- a/mm/Makefile +++ b/mm/Makefile @@ -61,6 +61,8 @@ obj-y := filemap.o mempool.o oom_kill.o fadvise.o \ page-alloc-y := page_alloc.o page-alloc-$(CONFIG_SHUFFLE_PAGE_ALLOCATOR) += shuffle.o +obj-$(CONFIG_PAGE_ALLOC_KUNIT_TEST) += page_alloc_test.o + # Give 'memory_hotplug' its own module-parameter namespace memory-hotplug-$(CONFIG_MEMORY_HOTPLUG) += memory_hotplug.o diff --git a/mm/page_alloc_test.c b/mm/page_alloc_test.c new file mode 100644 index 0000000000000000000000000000000000000000..377dfdd50a3c6928e15210cc87d5399c1db80da7 --- /dev/null +++ b/mm/page_alloc_test.c @@ -0,0 +1,21 @@ +// SPDX-License-Identifier: GPL-2.0-only +#include +#include +#include +#include +#include +#include +#include + +#include + +static struct kunit_case test_cases[] = { {} }; + +static struct kunit_suite test_suite = { + .name = "page_alloc", + .test_cases = test_cases, +}; +kunit_test_suite(test_suite); + +MODULE_LICENSE("GPL"); +MODULE_IMPORT_NS("EXPORTED_FOR_KUNIT_TESTING");