From: sashiko-bot@kernel.org
To: "Jianping Liu" <frankljpliu@gmail.com>, linux-ext4@vger.kernel.org
Cc: tytso@mit.edu
Subject: Re: [PATCH v2] ext4: fix soft lockup while shrinking the extent status cache
Date: Fri, 06 Nov 2026 03:40:45 +0000 [thread overview]
Message-ID: <sashiko-outbox-200657@kernel.org> (raw)
In-Reply-To: <20261106033141.1509656-1-frankljpliu@gmail.com>
> From: Jianping Liu <frankjpliu@tencent.com>
>
> __es_shrink() walks sbi->s_es_list and reclaims extents from each
> inode. On a non-preemptible kernel that walk never gives up the CPU.
>
> There is a soft lockup report on our company's machine. The machine
> with millions of active inodes, 256 CPUs, and heavy memory pressure,
> concurrent shrinkers run too long.
>
> i_es_lock is dropped after es_reclaim_extents(), and s_es_lock is not
> taken again until the next inode. When nr_to_scan remains, call
> cond_resched_tasks_rcu_qs() before continuing the scan.
>
> cond_resched() does not report the RCU quiescent state needed here.
> It is compiled out when CONFIG_PREEMPTION=y. Otherwise it schedules
> through preempt_schedule(), and RCU records that switch as a
> preemption. An RCU-tasks read-side section ends only at a voluntary
> context switch, cond_resched_tasks_rcu_qs(), idle, or return to
> userspace. The helper reports that voluntary quiescent state and still
> lets a non-preemptible kernel reschedule.
>
Sashiko has reviewed this patch and found no issues.
--
Sashiko AI review · https://sashiko.dev/#/patchset/20261106033141.1509656-1-frankljpliu@gmail.com?part=1
next prev parent reply other threads:[~2026-11-06 3:40 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-11-06 3:31 [PATCH v2] ext4: fix soft lockup while shrinking the extent status cache Jianping Liu
2026-11-06 3:40 ` sashiko-bot [this message]
2026-11-06 14:00 ` Jan Kara
-- strict thread matches above, loose matches on Subject: below --
2026-11-04 3:35 Jianping Liu
2026-11-04 3:43 ` sashiko-bot
2026-11-05 18:30 ` Jan Kara
2026-11-06 3:42 ` frank jpliu
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=sashiko-outbox-200657@kernel.org \
--to=sashiko-bot@kernel.org \
--cc=frankljpliu@gmail.com \
--cc=linux-ext4@vger.kernel.org \
--cc=sashiko-reviews@lists.linux.dev \
--cc=tytso@mit.edu \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.