From patchwork Sat Oct 19 01:29:38 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Houghton X-Patchwork-Id: 13842527 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 7DF23D3E195 for ; Sat, 19 Oct 2024 01:29:49 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 0894A6B00A6; Fri, 18 Oct 2024 21:29:49 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id E8FD96B00A8; Fri, 18 Oct 2024 21:29:48 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D318E6B00AA; Fri, 18 Oct 2024 21:29:48 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id AF0306B00A6 for ; Fri, 18 Oct 2024 21:29:48 -0400 (EDT) Received: from smtpin24.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id DF0811203EC for ; Sat, 19 Oct 2024 01:29:36 +0000 (UTC) X-FDA: 82688619720.24.06F9F62 Received: from mail-yw1-f201.google.com (mail-yw1-f201.google.com [209.85.128.201]) by imf23.hostedemail.com (Postfix) with ESMTP id 0AC2714000A for ; Sat, 19 Oct 2024 01:29:38 +0000 (UTC) Authentication-Results: imf23.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=PJY5mpTj; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf23.hostedemail.com: domain of 3iQsTZwoKCCwRbPWcOPbWVOWWOTM.KWUTQVcf-UUSdIKS.WZO@flex--jthoughton.bounces.google.com designates 209.85.128.201 as permitted sender) smtp.mailfrom=3iQsTZwoKCCwRbPWcOPbWVOWWOTM.KWUTQVcf-UUSdIKS.WZO@flex--jthoughton.bounces.google.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1729301266; a=rsa-sha256; cv=none; b=6f7LcRz9n9yIjGRjtLZjWmkk8+ecCTWg7bRKjvvZ3HeyWdIP2xr53fNFYdY0aEiuvf38Rc fRoszgubNIVg6s+KoR4UYx2nd4qyvMz0/d/zqXk6CbQZy3DKAlfbWK25FgL7yUlsX+fPdS V/eA1eIK7dSHrGaP8JOSjdSsMY1oo1Q= ARC-Authentication-Results: i=1; imf23.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=PJY5mpTj; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf23.hostedemail.com: domain of 3iQsTZwoKCCwRbPWcOPbWVOWWOTM.KWUTQVcf-UUSdIKS.WZO@flex--jthoughton.bounces.google.com designates 209.85.128.201 as permitted sender) smtp.mailfrom=3iQsTZwoKCCwRbPWcOPbWVOWWOTM.KWUTQVcf-UUSdIKS.WZO@flex--jthoughton.bounces.google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1729301266; 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=JWmoU09y+6wa+3R3ifZVkoogK5Ofgf3reUuHP39SGJ0=; b=lC+XTRKDXvBGFp/0gAUJGiR+QL+wJB9MVnFO6EzoEqe6IY9ChBXPTgvN9MxP/q1OjT0Oev ohczjH5MiBA9IgYqjGkV426iq0nGui+Db0fZdAPzjttMNA6xoM+dJL3/ETiYQWDP0hc0mv AiPOKFTkPnqh937XhfLmtHU1/oi1JEc= Received: by mail-yw1-f201.google.com with SMTP id 00721157ae682-6e1fbe2a6b1so48671117b3.2 for ; Fri, 18 Oct 2024 18:29:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1729301385; x=1729906185; 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=JWmoU09y+6wa+3R3ifZVkoogK5Ofgf3reUuHP39SGJ0=; b=PJY5mpTjVhqUgcu4T7BPbQtKaTqscaBIPPSNzkC9Q3qckcSFod5zyB9hg/pUNld2py KWdWbo6043pTA1YlTT4WTaTQxTmFkte1kREVZQq38RUWDeSDEh9AIKjKj1bhS8ELCyzC +hIkiPpsW66pVMt4TDSDjKjNNMFtBwigN5Qpq6K8lM8KdPLfPns2ydLwkdFLHAeV8vft iVy+f5+QxMYNAOydjoEPostfF6u2fi+KoPGIay0yjhxgkyVUacnSSG1H+t+t59BKaHJw qB9/1UdZZXsM3t/Df5B6uNxMjecbbPtmnNX7xR4qiB3y9CPp+aaYthSbfXefwuVO5dNP WDwg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1729301385; x=1729906185; 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=JWmoU09y+6wa+3R3ifZVkoogK5Ofgf3reUuHP39SGJ0=; b=GE7D+iKtvF+DJJ1XHDeNdoirTk0j81IXqZoR2Cgn5wxHDN0XOUBY6/HMAaNQ79jFBD NScDZKdrpsQIEl2S5fhpZUnkXDXiHHD2m2ISgvyuiFl18bu5U8Hz3liQN8HsZabmAadU WoiNdwVo3vRD0i8P68Gccng7kideSDTh+rph/V5M2/Sj8cXKjllvGaetTF+RSz3jQOK/ Tnx94nL7hURMmPBCBMoRV5r8kjhHUSzuBDaqtAmYdsEXh3QognLgqBQzVFWmF8GvXq4Y IrYsl1cJ4XW4f5IBlxBfHNoOD3rToszrUtAa+5Xbqe8Ldiy2aV3GMxyZ3zm2n2Ac6gk4 7CXg== X-Forwarded-Encrypted: i=1; AJvYcCWUIwaqop9uZu4FaQ7miYuwlOjhXTJAhglY7qH2aUKJaJdY4gGwuGv5V69YIk3ngFDBh7h3RGcJaQ==@kvack.org X-Gm-Message-State: AOJu0YyP0VoPnv2ulj43zBbQkYt2+SpTEBA+4jVeIavNG5EzRKy36IqB 2q2df3//5W4WfxwL3AboWeTGbJRrXyn2j7Eoi03HZXporqCCuRIyPgLtmmYmrVJ4mWsh4DuepGZ O0YlnCPMvcWg8/6WEwQ== X-Google-Smtp-Source: AGHT+IE7mxydzjHIcaCtSw9GRjaWSidW3zTmTU0yiTMTLG+FkvhjpHmaauVlHv0Tv7yfhEo/zPT4VQCUKP70YtII X-Received: from jthoughton.c.googlers.com ([fda3:e722:ac3:cc00:13d:fb22:ac12:a84b]) (user=jthoughton job=sendgmr) by 2002:a05:690c:2e90:b0:6e3:1627:e866 with SMTP id 00721157ae682-6e5bfbd836bmr424387b3.3.1729301385447; Fri, 18 Oct 2024 18:29:45 -0700 (PDT) Date: Sat, 19 Oct 2024 01:29:38 +0000 In-Reply-To: <20241019012940.3656292-1-jthoughton@google.com> Mime-Version: 1.0 References: <20241019012940.3656292-1-jthoughton@google.com> X-Mailer: git-send-email 2.47.0.105.g07ac214952-goog Message-ID: <20241019012940.3656292-2-jthoughton@google.com> Subject: [PATCH 1/2] mm: multi-gen LRU: remove MM_LEAF_OLD and MM_NONLEAF_TOTAL stats From: James Houghton To: Andrew Morton Cc: Sean Christopherson , Paolo Bonzini , David Matlack , David Rientjes , James Houghton , Oliver Upton , David Stevens , Yu Zhao , Wei Xu , Axel Rasmussen , kvm@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: 0AC2714000A X-Stat-Signature: o7qm8jw91od4jd3yjgwka8jpbzcfecb9 X-Rspam-User: X-HE-Tag: 1729301378-396713 X-HE-Meta: U2FsdGVkX18xUh7VqyVce8PkBdekkYngFSj6bu/gkrH1J4oV4s6JB15DzdhMaoNmSIRrrgp+34J4jYgi4WssjewkUZgBf0ti9WC5LdSull9e859a5OeNgcoH4mc3yncJ2xGkg9l7yhfL8fXSuCeD3eExmmj70FmJfksRmy/6k/6rh4Da/HFJWALzaVpWMyaVid2yL5wHWRqM+RN94K0RoljUs8eU741gl74VEU91eVLCw0wFnbq0RwX6KtsQByT8WfAFKVu8gVW2ZglipJp6rU3bIeVJecHgsibles83STqe/kfenSxjYRu73Tjf3kZRTn0/havsQKm6tgNd9ObjZaHnfRce6vjVNEyY7vwAyREH/bPT2+EOPpk8vtg7FRTJhnvBV4m+8FO8XsYXlae94hA/OrJTkQDxVWJxle6t2k0W3Esyt+Vb2MacD4LlnhRvI1MkuCj7Z3QjmEHt/auhoLBrqTIZSI9xNZhph2v1WwiWwrBCqKwY17I/efGdmPRajcKhOoS7wC/x6wAMwPzG0fo+GjHsjuYVcM97qSEzVDDRiNUYCTrCo8CXVqJuC3jiCQI0bgRrU9r6MYgpgR9z8stELpV6Y+++60Ouq0RVldwavodiko7XSdQIW7/d3aXOcFMumV/oSHRotfHP3ORJ/1TuvehXje0QQxfDz3vfZpSnlfL4qymArZEJRkTEz9njFWpYE4vmKCt12/o/A7ApaZSNr34b2W8a0ZUHLvM3aT7jaoheUQbXZUnhaPQmShxP5bb08Zc52+FON1jkIUrd4a0RFmc3Iluf3PhnSuhCXOlaFHvi0AFkyixtIDN/H7RHNuSC+OxGp/rBDchYjAnldyZvf7qNqnHiSKzCV/fwY1iGcJySJ8nN6DzF+D7FrR2m7oarAmGD61ZzSDV+aVU+If3W7iqHXEpEdYZUWwHf9aBr4qy2vDUmqoWbgqbvkwKN96f0DQQGviCof3aE/Ix uvSR/z7/ CdoJyOlTMXmo3Qx2bWlCR7CbOlCZXlT6lyut7rGLfQHVP6HF9xgje+EpH8TrlhlOmKDLpnriq8t7uNcq23Y7iFOMz4Ch8IO7rnHIhJn7Qv/xWjZMY315j91i1+rQwFdbZ6Due2xPcvVUGzNyY4UT2E/jGjP0xuW8IDORxT3ejj3AbtTV8v0q8PGMb5sz9FD5AkLzwmzLazddctgulzvWYa2Hhb5H8LKbbL/kTEZgxaUOyJelC3pzpDNLJxBCJtyf3jmm6obM0tV2Mags96gRgOLMihAI+oq/pezUGbxp+w/HbgnEbBjK7mQBXvvkVDpnBuRTLkriIdkdyApLU0RCDIZ48Z2YvWX4M0oSFMzzWH0+KDF1PlLWjuq1Se519DapYyWFSgbH0++67ZOSfBCBg+/nUeoLyRPLAKnUlTsax20n6tituquyoVz3XirIDYB0pFQlU5GNRfPAGeGwpsdFBRLMFboB6a2doTF44PSFy+G834BtZcX3s8fbv0VeUcCA1bGwurwShymRCTMyVLTye5UmHlSfq8+KTADXEetO05onF9KQWA3tiG68pScmoDdSq5TCzu7uRSTBt/sF+SxV7HQR8JHKhQcRXDuW0pHBV26fUrrcLOTqnmzvyKw== X-Bogosity: Ham, tests=bogofilter, spamicity=0.004042, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: From: Yu Zhao The removed stats, MM_LEAF_OLD and MM_NONLEAF_TOTAL, are not very helpful and become more complicated to properly compute when adding test/clear_young() notifiers in MGLRU's mm walk. Signed-off-by: Yu Zhao Signed-off-by: James Houghton --- include/linux/mmzone.h | 2 -- mm/vmscan.c | 14 +++++--------- 2 files changed, 5 insertions(+), 11 deletions(-) diff --git a/include/linux/mmzone.h b/include/linux/mmzone.h index 96dea31fb211..691c635d8d1f 100644 --- a/include/linux/mmzone.h +++ b/include/linux/mmzone.h @@ -460,9 +460,7 @@ struct lru_gen_folio { enum { MM_LEAF_TOTAL, /* total leaf entries */ - MM_LEAF_OLD, /* old leaf entries */ MM_LEAF_YOUNG, /* young leaf entries */ - MM_NONLEAF_TOTAL, /* total non-leaf entries */ MM_NONLEAF_FOUND, /* non-leaf entries found in Bloom filters */ MM_NONLEAF_ADDED, /* non-leaf entries added to Bloom filters */ NR_MM_STATS diff --git a/mm/vmscan.c b/mm/vmscan.c index 2d0486189804..60669f8bba46 100644 --- a/mm/vmscan.c +++ b/mm/vmscan.c @@ -3405,7 +3405,6 @@ static bool walk_pte_range(pmd_t *pmd, unsigned long start, unsigned long end, continue; if (!pte_young(ptent)) { - walk->mm_stats[MM_LEAF_OLD]++; continue; } @@ -3558,7 +3557,6 @@ static void walk_pmd_range(pud_t *pud, unsigned long start, unsigned long end, walk->mm_stats[MM_LEAF_TOTAL]++; if (!pmd_young(val)) { - walk->mm_stats[MM_LEAF_OLD]++; continue; } @@ -3570,8 +3568,6 @@ static void walk_pmd_range(pud_t *pud, unsigned long start, unsigned long end, continue; } - walk->mm_stats[MM_NONLEAF_TOTAL]++; - if (!walk->force_scan && should_clear_pmd_young()) { if (!pmd_young(val)) continue; @@ -5262,11 +5258,11 @@ static void lru_gen_seq_show_full(struct seq_file *m, struct lruvec *lruvec, for (tier = 0; tier < MAX_NR_TIERS; tier++) { seq_printf(m, " %10d", tier); for (type = 0; type < ANON_AND_FILE; type++) { - const char *s = " "; + const char *s = "xxx"; unsigned long n[3] = {}; if (seq == max_seq) { - s = "RT "; + s = "RTx"; n[0] = READ_ONCE(lrugen->avg_refaulted[type][tier]); n[1] = READ_ONCE(lrugen->avg_total[type][tier]); } else if (seq == min_seq[type] || NR_HIST_GENS > 1) { @@ -5288,14 +5284,14 @@ static void lru_gen_seq_show_full(struct seq_file *m, struct lruvec *lruvec, seq_puts(m, " "); for (i = 0; i < NR_MM_STATS; i++) { - const char *s = " "; + const char *s = "xxxx"; unsigned long n = 0; if (seq == max_seq && NR_HIST_GENS == 1) { - s = "LOYNFA"; + s = "TYFA"; n = READ_ONCE(mm_state->stats[hist][i]); } else if (seq != max_seq && NR_HIST_GENS > 1) { - s = "loynfa"; + s = "tyfa"; n = READ_ONCE(mm_state->stats[hist][i]); }