From patchwork Mon Mar 24 22:02:59 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kinsey Ho X-Patchwork-Id: 14027923 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 68A4DC36002 for ; Mon, 24 Mar 2025 22:03:13 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id BBB7D280004; Mon, 24 Mar 2025 18:03:11 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id B43C1280001; Mon, 24 Mar 2025 18:03:11 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id A0CDD280004; Mon, 24 Mar 2025 18:03:11 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id 8116C280001 for ; Mon, 24 Mar 2025 18:03:11 -0400 (EDT) Received: from smtpin07.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 39ACFC09E3 for ; Mon, 24 Mar 2025 22:03:12 +0000 (UTC) X-FDA: 83257821024.07.AA5F4D0 Received: from mail-pl1-f202.google.com (mail-pl1-f202.google.com [209.85.214.202]) by imf23.hostedemail.com (Postfix) with ESMTP id 8DCD5140004 for ; Mon, 24 Mar 2025 22:03:10 +0000 (UTC) Authentication-Results: imf23.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=gTcL6150; spf=pass (imf23.hostedemail.com: domain of 3nNbhZwgKCBc75AF1L4B3BB381.zB985AHK-997Ixz7.BE3@flex--kinseyho.bounces.google.com designates 209.85.214.202 as permitted sender) smtp.mailfrom=3nNbhZwgKCBc75AF1L4B3BB381.zB985AHK-997Ixz7.BE3@flex--kinseyho.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=1742853790; 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=+jlhSt+zRcHOT32K00fMqybrca9+pySYTa39BSZD5ZM=; b=EUts+UkXUCyG+bzTmxJikdsG500v3uj3N/S0yB7gHct1gPq569gVtGWTjuFkBndpe/S1XF vwNwwpUIvb28D/N+jb7QzI1XvKpMaHosPaf7MISJ2e+gZj/Z1nYploQMZwOSjwrgE4M0pI eOCKjRu6U9ENVGH2Uyw7Rl44H0QLaVY= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1742853790; a=rsa-sha256; cv=none; b=g8Zxk4cvV9+W6SBBPvqaIczeG9gUhxUQ54+TGgsDUiif3ErrtaCFBjUyvU5e6WVV0GTcCC Ug5U9kE+Nt7PQchYEJpxChokFhsdxohE+mOWrNz0TS6uGAsebJcvw4G9nSeySoDHrOzxCQ 1TeqSR1WuNby2aSWUxEMz02IWVhujyk= ARC-Authentication-Results: i=1; imf23.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=gTcL6150; spf=pass (imf23.hostedemail.com: domain of 3nNbhZwgKCBc75AF1L4B3BB381.zB985AHK-997Ixz7.BE3@flex--kinseyho.bounces.google.com designates 209.85.214.202 as permitted sender) smtp.mailfrom=3nNbhZwgKCBc75AF1L4B3BB381.zB985AHK-997Ixz7.BE3@flex--kinseyho.bounces.google.com; dmarc=pass (policy=reject) header.from=google.com Received: by mail-pl1-f202.google.com with SMTP id d9443c01a7336-2240a960f9cso78185515ad.0 for ; Mon, 24 Mar 2025 15:03:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1742853789; x=1743458589; darn=kvack.org; h=cc:to:from:subject:message-id:mime-version:date:from:to:cc:subject :date:message-id:reply-to; bh=+jlhSt+zRcHOT32K00fMqybrca9+pySYTa39BSZD5ZM=; b=gTcL6150Yro+bvkFNPM/6oOtMQtWkC2hWAUYrgHNBmA6KjXM6TyIDpbQ3zsQGrR6eT cLqh9+DNBWjK1+dvjeZPDW/5X6PV0Tg3t44Lbz5/74qD7q3rQJ+qoxpYwYm6lOamKj0O I68laqxAsBt3KrQBpoLjS6D3q+ohUnLkawNcQ9x4rN+Sn6RB07aleCAbCPiXEgmWLhxK JJMnnOoE1JsK/PrxYgn2u8IJtQizbi3TaIkADxP0Jj9DzOGGURGim6AkuyYi1FOAmqI9 caWd7FZ4fX5VVVJ4I7Zofc8v3fmY3vLH5wi8cA4IBMru/FhvIZh1f5Qh/MjCOYnUqJqe QpMg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742853789; x=1743458589; h=cc:to:from:subject:message-id:mime-version:date:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=+jlhSt+zRcHOT32K00fMqybrca9+pySYTa39BSZD5ZM=; b=t/DYQnOb/tctAeLUTM0MC0zOOmS4QExq+edhMwz8FPoiBWU+IymZdPpifsG/0S1dpT pu+hZCLYET8TS1wAyZZCNy/xlBpXEYvR7UaJqjGkQw74BxUUsKjK1pZXi1k/q9d8O8sg oEeKBu1yWlI5c+Jg0SNK0hQN6yEXojxWN43Y4EvOsZkiseRVEygF/ffBwDfIBl2lWklB Cqu9MJHmMdfal4myhfSUbRBSua3sxScHzaZv0Nls7GH5l2HJP02RubJfWp/iBzrUIewP 49EH0u/Q2TB+gI7WJaJsxUZcRBsaCLQeqyWauXq3TpJOAJ2/N0CKfqpLg6IxEppSK7Jj 6QOA== X-Gm-Message-State: AOJu0Yw/qklI+6lzxoq1255QM7sGFN7cMY72l9cERB1pH9PDlC1HKqNK PiX12dllKMEOr2Algddj3d5q6dD1EVlHlh8kJhbKEaGC27eqqGx0Jw3A9H6kA84oLTkBH6FKL8n O4An4GVoU+dcBBUcS8UbqFv+S85gqd7Kdl68P20/6iXPnUHRaK5E0xyIDF3xbFVXFxRfRIAR5Y5 7P6/OSBFGto8UVNwmCVOEXacm+1tpSyz5BzE2ldg== X-Google-Smtp-Source: AGHT+IGeOWd4IKU9kpcYW968CJzfD+7iaIXBkGZ1bvW2+ksZHg609U5g7s06PktVFz/qvmogxyC5p6gWhF2UFA== X-Received: from plxm1.prod.google.com ([2002:a17:902:db01:b0:21f:40e5:a651]) (user=kinseyho job=prod-delivery.src-stubby-dispatcher) by 2002:a17:902:e549:b0:224:194c:694c with SMTP id d9443c01a7336-22780d9bd43mr266827275ad.28.1742853788991; Mon, 24 Mar 2025 15:03:08 -0700 (PDT) Date: Mon, 24 Mar 2025 15:02:59 -0700 Mime-Version: 1.0 X-Mailer: git-send-email 2.49.0.395.g12beb8f557-goog Message-ID: <20250324220301.1273038-1-kinseyho@google.com> Subject: [RFC PATCH v1 0/2] mm: multi-gen LRU scanning for page promotion From: Kinsey Ho To: linux-mm@kvack.org, linux-kernel@vger.kernel.org Cc: yuanchu@google.com, AneeshKumar.KizhakeVeetil@arm.com, Hasan.Maruf@amd.com, Jonathan.Cameron@huawei.com, Michael.Day@amd.com, akpm@linux-foundation.org, dave.hansen@intel.com, david@redhat.com, feng.tang@intel.com, gourry@gourry.net, hannes@cmpxchg.org, honggyu.kim@sk.com, hughd@google.com, jhubbard@nvidia.com, k.shutemov@gmail.com, kbusch@meta.com, kmanaouil.dev@gmail.com, leesuyeon0506@gmail.com, leillc@google.com, liam.howlett@oracle.com, mgorman@techsingularity.net, mingo@redhat.com, nadav.amit@gmail.com, nphamcs@gmail.com, peterz@infradead.org, raghavendra.kt@amd.com, riel@surriel.com, rientjes@google.com, rppt@kernel.org, shivankg@amd.com, shy828301@gmail.com, sj@kernel.org, vbabka@suse.cz, weixugc@google.com, willy@infradead.org, ying.huang@linux.alibaba.com, ziy@nvidia.com, dave@stgolabs.net, hyeonggon.yoo@sk.com, bharata@amd.com, Kinsey Ho X-Rspam-User: X-Rspamd-Server: rspam10 X-Rspamd-Queue-Id: 8DCD5140004 X-Stat-Signature: zucn4kxm7detfzrygrukwz7bgfxruetx X-HE-Tag: 1742853790-525507 X-HE-Meta: U2FsdGVkX1+xNKvjfTRRFGcxIWolmdVIqSke2y3Q/ZYyeVfpH7bGUcI1gG8OYdBFxrmpq/tAiZFJrOL0/ijoBhtGJRcJ8nDtXGJZqgxOe78YoRv9H0sClCCHRVkVXaJBKJ9ZoERXkDNHfFR7ImaKmFQUPPkzqnSGcuhAbBAU6MzOF4N3QWQat5rzeUcsJDKz+LyJLq29UedO5PzVvZ3VrusoJ6vl/LyggbLRHddbGWquuhG8MOfae8eJJAKUomokG9GCKt1MCaliz0qbIY+ZjgUR2WuZy5MQKkIFXk48VRejNqWoQems1a3YoLMBOdpZrDVfVdZ5I1VQmLYsNKleSIOhDQ96RJW0dM49JTEcpcsYjF6uUHsIlRts5SyT3+NKFzIWH4hw3CTUEnZM5aS+yfuJdvk8ImF9AtnG3hO+teLAWdCI9wAAe1FZ8cVs3qTq400Nd1uwyKMhLYqSVp6f2rwoqEX79RI8EvA+k9nmp1oN/vuh/Dtq61rUSbr3LhbmNe5NStmjJeiIwMikh9e9orStZLXNy9atSH7Lk0Ie9iFgW2Lno5l8ZumznrnSF4Ihh1rtbTBRN7Cww6evqWk8Szchq3l7n/YGrhQZ8gfQ+bXwXq2aAUe883AD6yOIuHbst5ALjGYvnPhbTvKAjnO/D5YgytRFRU1jT5+v1BV3UCeeYnnEjUsJvhtkaY6qZJWIoLXDTQ/DxwJDNXUtJ1BiN8jmJ+fkwzknxTUkb+4qeWAp/iB1nXRO+dAGs6r4usMQ7bjWU5NcMFqQtFAJK75fPOEwH20+SxG+UJ2TZMXLk2F+iPyM0M51bo3JFW5cghgrsIuNxgOD372nRC49uTuSTDG/ECDy4BQy2GwyDjzpP8FvNQPw/B0pBvqlcNnbtplwJkZrSW+4rHK7RpSGuaaACl2Ct72KMH5vNUsDdBFIa7kyXKdXa5oM5OTbC5wFp+DVksqVt33jPMfISGtHarn XQLSgAjE zL2zyWAV5wTKkXwFsmEQ5JZGDUXPIvCYXpEYI0mlplgMUmX0baAL87kZ1XdNg+Im2PzUxMq5zorBM61y267127rEo0LzQMK7Hu2YNYlmiq8lcx7jIFZyR03oVsvIr7h5704ul97uIrKtwhP75zST30TrZW1v3aNddt322za/6/dcHfvWbEw15T15L7Q/lsQ8r5Cr3tyDnLvKS0GvYoMiPjtvxmGEM17eZMK6ca2ajjrs9W3sJmzKG95SqDKj2IMx9zwo6Dlzd/RXf1FfLD0ZuTQzSScfLsQ89K+4PQnBJ5+vfdVj6TYmHbJdKKIhg/FTMtY/24HXu1hkDjAqtlgmIB0UcwMQKOs39TYJ12EDHfFUzEPD9WKUey4kzND8Ta4zWdNqvHdfrVuJmeHegSCbvJUxnOeqt2awkFtY9ccFmcoWWrsrnmbfPDOlR2JoLgtOZO43GZjlJRBog5SiRRHqvbYy5srnlp4/k3cHir8S3VwncJfb9KnytgZWWC3qy5fyJZau4eD2UKhLXywUl/NyuHx4HdPUk2F4OnFhg7fY04XVG6R9BdOUPJ6mFRy2L+36p41IW64GVcFUYOiGwHm4wjZJz3aAi6oVFPJfWs/+kWmUaHMs1q0s+lDe+t8e90nn+dyOmYbogilLX5fs= X-Bogosity: Ham, tests=bogofilter, spamicity=0.028086, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: This patch series introduces a software-based approach to identify hot pages for promotion in tiered memory systems, particularly those leveraging CXL-attached memory, by utilizing the Multi-Generational LRU (MGLRU) framework. This method is designed to complement hardware-based hotness detection mechanisms like Intel PMU sampling, AMD IBS, or dedicated CXL memory monitoring units, providing a more comprehensive view of page access patterns, similar to kmmscand [1]. We propose to utilize MGLRU's existing infrastructure to provide hot page information. A key benefit here is the reuse of the MGLRU page table walk code, thus avoiding the overhead and duplication of effort involved in implementing a separate page table scanning mechanism. The working set reporting proposal [2] also reuses MGLRU's infrastructure, but focuses on cold page detection. It provides its own aging daemon, which could additionally provide hot page information by integrating this proof-of-concept. This series relies on kpromoted [3] as the migration engine to implement the promotion policies. This is just an early proof-of-concept RFC posted now in the context of LSFMM. Kinsey Ho (2): mm: mglru: generalize page table walk mm: klruscand: use mglru scanning for page promotion include/linux/mmzone.h | 5 ++ mm/Kconfig | 8 ++ mm/Makefile | 1 + mm/internal.h | 4 + mm/klruscand.c | 118 +++++++++++++++++++++++++++ mm/vmscan.c | 177 ++++++++++++++++++++++++++++++----------- 6 files changed, 267 insertions(+), 46 deletions(-) create mode 100644 mm/klruscand.c