Received: by 2002:ab2:1149:0:b0:1f3:1f8c:d0c6 with SMTP id z9csp2851834lqz; Wed, 3 Apr 2024 10:15:25 -0700 (PDT) X-Forwarded-Encrypted: i=3; AJvYcCVUNYRMpbhVJAjSxpwrVyWyEHVS1g81twKUGcUJBQKkE2cZLswKBgufheAIo07SrDs9AVYigvxk5wXzZ0N7cIYWSn4slb8nrjb842cQGQ== X-Google-Smtp-Source: AGHT+IE/Ia/sX1XFJfVm3fLv8AUy1ScJfpUx3DkWDFMa2Nt62eUQyYcIDuALI59odv4b1GFGQftg X-Received: by 2002:a2e:990f:0:b0:2d4:5404:3e8e with SMTP id v15-20020a2e990f000000b002d454043e8emr174751lji.42.1712164525722; Wed, 03 Apr 2024 10:15:25 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1712164525; cv=pass; d=google.com; s=arc-20160816; b=KtyjjcakrrP2NxsSrpixzRd5o5arhNyD474bqHP8yFiuUYS+89pOyXOF4B6MHjkO0D WLYSRCU4xJLllk4KLcIQUhAp+B5y8CDcddl432r8bLMujt2w9H9GY/ETZp1kuYvWZ5sY 5iKlY1LK7JFgS2h9diz0G8h0fwpej9DNyI5f7xLeO1HFT6Q5d1lgbIsrGvT52MNNmbO9 S6kIMDO33FDrIv+gaqU4LiLWUgXbyuzfcDYEudddO4HmKrxOxY7Tm3Go+nspQlh7L6Gz lnZtf3EY1wrjU6T2Adtv+/mvLmay0S3MxetNd6cHsUXPBTMMsoFdMdXVkqzYUHWpL3nB Nwqw== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:references:in-reply-to:message-id :date:subject:cc:to:from:dkim-signature; bh=PV5UzSxT44kEb6CXRTq0MrEyiFGg30Ta3X7PuDVeqgc=; fh=CIvX1mmMahnKFkPxvC38yv9oXvG/u9Adhhvv/mLX4Q0=; b=SIy7d0tajsRNlLEv5OA/bvldA2YSb9GxpP+BtwjsTjzAWjVkzdjG3ZNK//HS82KBXT jxOB92dlUA1yEfmLd28h5WI/qJefCjNT9Si9Fl/bgirmo4hwm/TUdxESCmJjs6+mnLzE rq7QYXEh/daQrKRh7SO5IP0UC1heVegoPGW6lIyhSpYz9iH0KZjyMoRlP6Ry6jkrmVDe 6xzuGz+cR/jhTv1gO8bpknL/31OBWEP2YEz4hLZA8hRi5D/3BbNZWmD2xX4eYJFMI/YV tNQ1cGYUWdFpD279K6ZFTLofua4Mk2BmQ6844+0HkZTiCwEd3NRDgNYAln0ihO80toAl 5tTQ==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@infradead.org header.s=casper.20170209 header.b=O6+39Y3c; arc=pass (i=1 dkim=pass dkdomain=infradead.org); spf=pass (google.com: domain of linux-kernel+bounces-130263-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.80.249 as permitted sender) smtp.mailfrom="linux-kernel+bounces-130263-linux.lists.archive=gmail.com@vger.kernel.org" Return-Path: Received: from am.mirrors.kernel.org (am.mirrors.kernel.org. [147.75.80.249]) by mx.google.com with ESMTPS id en25-20020a056402529900b0056bec94dc31si7008021edb.683.2024.04.03.10.15.25 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 03 Apr 2024 10:15:25 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel+bounces-130263-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.80.249 as permitted sender) client-ip=147.75.80.249; Authentication-Results: mx.google.com; dkim=pass header.i=@infradead.org header.s=casper.20170209 header.b=O6+39Y3c; arc=pass (i=1 dkim=pass dkdomain=infradead.org); spf=pass (google.com: domain of linux-kernel+bounces-130263-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.80.249 as permitted sender) smtp.mailfrom="linux-kernel+bounces-130263-linux.lists.archive=gmail.com@vger.kernel.org" Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by am.mirrors.kernel.org (Postfix) with ESMTPS id 482731F28280 for ; Wed, 3 Apr 2024 17:15:25 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id D0DA01534EE; Wed, 3 Apr 2024 17:15:06 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=infradead.org header.i=@infradead.org header.b="O6+39Y3c" Received: from casper.infradead.org (casper.infradead.org [90.155.50.34]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 51523152DE7; Wed, 3 Apr 2024 17:15:04 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=90.155.50.34 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1712164506; cv=none; b=flqBlwsdE4tBp61GnAbVNQ8sUtmR0uilGjVUNy6RdZv4oMTNRL1KzR1wFYLbgBKoOwSvDRuGgiB5oUsFN88vuB6OVfgx4mnrEC75NgsHS4cHOAg0nJCvueZe19V5BMtsnONDIBJKkEm0RJXygr9XAIe0uWAQI0lvknLiY+iJX5w= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1712164506; c=relaxed/simple; bh=YEZSyj08uAWUgvVNCL0bhk/P8dX/wHCa62h9mJQyDxQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=EDXrdaiqXHHpWcEYE8XC0dos0rjHpUhm9Vw/ffwwd3/WiES4yFnlCt/JVgwBpkmkrW3vrLBFMMBAVbhfAILLM8QP1w9v3fmCHmw8sYPY9mW60RcZUD3FUl9lD6Z5SNxh2pi7+ibbFZBXRTz5C6ZARJyRneWUsrnRLikEWY9lNgA= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=infradead.org; spf=none smtp.mailfrom=infradead.org; dkim=pass (2048-bit key) header.d=infradead.org header.i=@infradead.org header.b=O6+39Y3c; arc=none smtp.client-ip=90.155.50.34 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=infradead.org Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; h=Content-Transfer-Encoding:MIME-Version: References:In-Reply-To:Message-ID:Date:Subject:Cc:To:From:Sender:Reply-To: Content-Type:Content-ID:Content-Description; bh=PV5UzSxT44kEb6CXRTq0MrEyiFGg30Ta3X7PuDVeqgc=; b=O6+39Y3cqfq3/j0yYE+/iPXAL0 hbwNKgv7dJBqPHYibJqj/20b3p6ucW8gY4agsx4sUkPXoaKMfQUANxQLb3T5GCU5p34NhrbzjoeBq 88619o6cVdcdZzPcLHEQIQKpFzlWZzsb3N7X75LAvXw0IEoDzxipLREDBUTGw8PAYheqJOcj2Crut Q6rxT/qcD3pXBfdtaZ9PqyULVT67OS/NwMmBFElvq5Gk0eseYGyD3QOWflvhIT1D3afPn/nVVNhVA Ppgy7ekTjYs5bX3147tEggxSQjgNNvY96EW7042kehl1iFkUzdmjJOxe87S5zOW+8eOnpIVehrAGJ pLRZNwUg==; Received: from willy by casper.infradead.org with local (Exim 4.97.1 #2 (Red Hat Linux)) id 1rs4CQ-000000063wX-0l0Y; Wed, 03 Apr 2024 17:14:58 +0000 From: "Matthew Wilcox (Oracle)" To: Andrew Morton , Christian Brauner Cc: "Matthew Wilcox (Oracle)" , linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org Subject: [PATCH 1/4] proc: Convert gather_stats to use a folio Date: Wed, 3 Apr 2024 18:14:52 +0100 Message-ID: <20240403171456.1445117-2-willy@infradead.org> X-Mailer: git-send-email 2.44.0 In-Reply-To: <20240403171456.1445117-1-willy@infradead.org> References: <20240403171456.1445117-1-willy@infradead.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Replaces six calls to compound_head() with one. Shrinks the function from 5054 bytes to 1756 bytes in an allmodconfig build. Signed-off-by: Matthew Wilcox (Oracle) --- fs/proc/task_mmu.c | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/fs/proc/task_mmu.c b/fs/proc/task_mmu.c index e8d1008a838d..5260a2788f74 100644 --- a/fs/proc/task_mmu.c +++ b/fs/proc/task_mmu.c @@ -2549,28 +2549,29 @@ struct numa_maps_private { static void gather_stats(struct page *page, struct numa_maps *md, int pte_dirty, unsigned long nr_pages) { + struct folio *folio = page_folio(page); int count = page_mapcount(page); md->pages += nr_pages; - if (pte_dirty || PageDirty(page)) + if (pte_dirty || folio_test_dirty(folio)) md->dirty += nr_pages; - if (PageSwapCache(page)) + if (folio_test_swapcache(folio)) md->swapcache += nr_pages; - if (PageActive(page) || PageUnevictable(page)) + if (folio_test_active(folio) || folio_test_unevictable(folio)) md->active += nr_pages; - if (PageWriteback(page)) + if (folio_test_writeback(folio)) md->writeback += nr_pages; - if (PageAnon(page)) + if (folio_test_anon(folio)) md->anon += nr_pages; if (count > md->mapcount_max) md->mapcount_max = count; - md->node[page_to_nid(page)] += nr_pages; + md->node[folio_nid(folio)] += nr_pages; } static struct page *can_gather_numa_stats(pte_t pte, struct vm_area_struct *vma, -- 2.43.0