[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20210226091718.2927291-1-yuzhao@google.com>
Date: Fri, 26 Feb 2021 02:17:15 -0700
From: Yu Zhao <yuzhao@...gle.com>
To: akpm@...ux-foundation.org, alex.shi@...ux.alibaba.com,
vbabka@...e.cz, willy@...radead.org
Cc: guro@...com, hannes@...xchg.org, hughd@...gle.com,
linux-kernel@...r.kernel.org, linux-mm@...ck.org,
mhocko@...nel.org, vdavydov.dev@...il.com,
Yu Zhao <yuzhao@...gle.com>
Subject: [PATCH v2 0/3] trim the uses of compound_head()
Patch series "mm: lru related cleanups" starting at commit 42895ea73bcd
("mm/vmscan.c: use add_page_to_lru_list()") bloated vmlinux by 1777
bytes, according to:
https://lore.kernel.org/linux-mm/85b3e8f2-5982-3329-c20d-cf062b8da71e@suse.cz/
It turned out many places inline Page{Active,Unevictable} which in
turn include compound_head().
>From the v1:
Removing compound_head() entirely from Page{Active,Unevictable} may
not be the best option (for the moment) because there may be other
cases that need compound_head().
In addition to picking a couple pieces of low-hanging fruit, this v2
removes compound_head() completely from Page{Active,Unevictable}.
bloat-o-meter result before and after the series:
add/remove: 0/0 grow/shrink: 6/92 up/down: 697/-7656 (-6959)
Yu Zhao (3):
mm: bypass compound_head() for PF_NO_TAIL when enforce=1
mm: use PF_NO_TAIL for PG_lru
mm: use PF_ONLY_HEAD for PG_active and PG_unevictable
fs/proc/task_mmu.c | 3 ++-
include/linux/page-flags.h | 16 ++++++++--------
2 files changed, 10 insertions(+), 9 deletions(-)
--
2.30.1.766.gb4fecdf3b7-goog
Powered by blists - more mailing lists