linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Kent Overstreet <kent.overstreet@linux.dev>
To: Dave Chinner <david@fromorbit.com>
Cc: linux-fsdevel@vger.kernel.org, linux-mm@kvack.org
Subject: Re: [PATCH 00/10] shrinker debugging, .to_text() report (resend)
Date: Tue, 27 Aug 2024 22:23:14 -0400	[thread overview]
Message-ID: <2zd3yfcglv3wf6vgjl4dxaeajrovoxeaca3gkyl6o6aj24syyd@5ghiokumyv4s> (raw)
In-Reply-To: <Zs6CpsYtsL4mtoSN@dread.disaster.area>

On Wed, Aug 28, 2024 at 11:51:34AM GMT, Dave Chinner wrote:
> On Sat, Aug 24, 2024 at 03:10:07PM -0400, Kent Overstreet wrote:
> > recently new OOMs have been cropping up, and reclaim is implicated, so
> > I've had to dust off these patches.
> > 
> > nothing significant has changed since the last time I posted, and they
> > have been valuable - Dave, think we can get them in?
> 
> You need to describe what this does. What does the output look like?
> Where does it go (console, dmesg, etc). When is it called, etc.
> Links to previous review threads so people can get back up to speed
> on what was discussed last time and determine whether issues raised
> were solved. A changelog since the last posting is helpful, too...

Not much has changed since last posting, besides tweaking/improving
counters...

objects, requested to free, objects freed: so we can tell if a shrinker
isn't freeing as requested

last scanned and last freed are new - so we can tell if a shrinker's
gotten stuck (perhaps it requires a lock that it isn't able to get)

bcachefs shrinkers additionally have counters for every distinct reason
an object wasn't freed - this has been quite useful in the past:

BTW - the next thing I want to get done is adding an interface for
shrinkers to report the amount of memory they own in bytes. This will
greatly aid the show_mem report, so it can skip reporting on shrinkers
entirely if they don't control much memory or pick a number to show more
intelligently.

It'll also let us finally fix the free command.

root@moria-kvm:/sys/kernel/debug/shrinker$ cat 05baba83-05ef-4d71-be0e-121bdabfee36-btree_key_cache-43/report 
05baba83-05ef-4d71-be0e-121bdabfee36-btree_key_cache
objects:             122411
requested to free:   63
objects freed:       0
last scanned:        198 sec ago
last freed:          42949578 sec ago
ns per object freed: 0
keys:                         129119
dirty:                          6580
table size:                   262144

shrinker:
requested_to_free:                 0
freed:                             0
skipped_dirty:                    21
skipped_accessed:                 42
skipped_lock_fail:                 0

pending:                      114727

root@moria-kvm:/sys/kernel/debug/shrinker# cat sb-bcachefs-44/report 
sb-bcachefs
objects:             1
requested to free:   0
objects freed:       0
last scanned:        42949693 sec ago
last freed:          42949693 sec ago
ns per object freed: 0
inodes:   total 2 shrinkable 0
dentries: toal 2 shrinkbale 1


      reply	other threads:[~2024-08-28  2:23 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-08-24 19:10 Kent Overstreet
2024-08-24 19:10 ` [PATCH 01/10] seq_buf: seq_buf_human_readable_u64() Kent Overstreet
2024-08-24 19:10 ` [PATCH 02/10] mm: shrinker: Add a .to_text() method for shrinkers Kent Overstreet
2024-08-26  3:01   ` Qi Zheng
2024-08-26  3:04     ` Kent Overstreet
2024-08-26  3:10       ` Qi Zheng
2024-08-26  3:32         ` Kent Overstreet
2024-08-28  3:32   ` Dave Chinner
2024-08-24 19:10 ` [PATCH 03/10] mm: shrinker: Add new stats for .to_text() Kent Overstreet
2024-08-28  2:36   ` Dave Chinner
2024-08-28  2:42     ` Kent Overstreet
2024-08-24 19:10 ` [PATCH 04/10] mm: Centralize & improve oom reporting in show_mem.c Kent Overstreet
2024-08-24 19:10 ` [PATCH 05/10] mm: shrinker: Add shrinker_to_text() to debugfs interface Kent Overstreet
2024-08-24 19:10 ` [PATCH 06/10] bcachefs: shrinker.to_text() methods Kent Overstreet
2024-08-24 19:10 ` [PATCH 07/10] percpu: per_cpu_sum() Kent Overstreet
2024-08-24 19:10 ` [PATCH 08/10] fs: Add super_block->s_inodes_nr Kent Overstreet
2024-08-24 19:10 ` [PATCH 09/10] fs/dcache: Add per-sb accounting for nr dentries Kent Overstreet
2024-08-24 19:10 ` [PATCH 10/10] fs: super_cache_to_text() Kent Overstreet
2024-08-28  3:43   ` Dave Chinner
2024-08-28  1:51 ` [PATCH 00/10] shrinker debugging, .to_text() report (resend) Dave Chinner
2024-08-28  2:23   ` Kent Overstreet [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=2zd3yfcglv3wf6vgjl4dxaeajrovoxeaca3gkyl6o6aj24syyd@5ghiokumyv4s \
    --to=kent.overstreet@linux.dev \
    --cc=david@fromorbit.com \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox