[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAKEwX=NE3ngvFnyHQTAofX3M08JkeZZcfaKi_mkOUuiB4zh6Dg@mail.gmail.com>
Date: Fri, 5 Sep 2025 10:46:29 -0700
From: Nhat Pham <nphamcs@...il.com>
To: Sergey Senozhatsky <senozhatsky@...omium.org>
Cc: Thadeu Lima de Souza Cascardo <cascardo@...lia.com>, Andrew Morton <akpm@...ux-foundation.org>,
Vlastimil Babka <vbabka@...e.cz>, Suren Baghdasaryan <surenb@...gle.com>, Michal Hocko <mhocko@...e.com>,
Brendan Jackman <jackmanb@...gle.com>, Johannes Weiner <hannes@...xchg.org>, Zi Yan <ziy@...dia.com>,
Minchan Kim <minchan@...nel.org>, Yosry Ahmed <yosry.ahmed@...ux.dev>,
Chengming Zhou <chengming.zhou@...ux.dev>, SeongJae Park <sj@...nel.org>,
Lorenzo Stoakes <lorenzo.stoakes@...cle.com>, linux-mm@...ck.org,
linux-kernel@...r.kernel.org, kernel-dev@...lia.com
Subject: Re: [PATCH v2] mm: show_mem: show number of zspages in show_free_areas
On Wed, Sep 3, 2025 at 11:44 PM Sergey Senozhatsky
<senozhatsky@...omium.org> wrote:
>
> On (25/09/02 09:49), Thadeu Lima de Souza Cascardo wrote:
> > When OOM is triggered, it will show where the pages might be for each zone.
> > When using zram or zswap, it might look like lots of pages are missing.
> > After this patch, zspages are shown as below.
> >
> > [ 48.792859] Node 0 DMA free:2812kB boost:0kB min:60kB low:72kB high:84kB reserved_highatomic:0KB free_highatomic:0KB active_anon:0kB inactive_anon:0kB active_file:0kB inactive_file:0kB unevictable:0kB writepending:0kB zspages:11160kB present:15992kB managed:15360kB mlocked:0kB bounce:0kB free_pcp:0kB local_pcp:0kB free_cma:0kB
> > [ 48.792962] lowmem_reserve[]: 0 956 956 956 956
> > [ 48.792988] Node 0 DMA32 free:3512kB boost:0kB min:3912kB low:4888kB high:5864kB reserved_highatomic:0KB free_highatomic:0KB active_anon:0kB inactive_anon:28kB active_file:8kB inactive_file:16kB unevictable:0kB writepending:0kB zspages:916780kB present:1032064kB managed:978944kB mlocked:0kB bounce:0kB free_pcp:500kB local_pcp:248kB free_cma:0kB
> > [ 48.793118] lowmem_reserve[]: 0 0 0 0 0
> >
> > Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@...lia.com>
> > ---
> > v2:
> > - fix build when CONFIG_ZSMALLOC is not enabled
> > ---
> > mm/show_mem.c | 6 ++++++
> > 1 file changed, 6 insertions(+)
> >
> > diff --git a/mm/show_mem.c b/mm/show_mem.c
> > index 41999e94a56d623726ea92f3f38785e8b218afe5..c563d9adfa87765a8736e91c1f68d824b03eaea8 100644
> > --- a/mm/show_mem.c
> > +++ b/mm/show_mem.c
> > @@ -310,6 +310,7 @@ static void show_free_areas(unsigned int filter, nodemask_t *nodemask, int max_z
> > " inactive_file:%lukB"
> > " unevictable:%lukB"
> > " writepending:%lukB"
> > + " zspages:%lukB"
> > " present:%lukB"
> > " managed:%lukB"
> > " mlocked:%lukB"
>
> A little "preliminary optimization" idea: do we want to specifically
> refer to it as "zspages" or do we want a more generic term, just in
> case if zsmalloc goes away, or if there is (are) another allocator(s)
> for compressed swaps?
Hmmm, zpage? z is a common prefix for "compressed".
I'm honestly fine with zspage though. We can just have any new
allocator call it zspage too ;)
Powered by blists - more mailing lists