From: SJ Park <sj@kernel.org>
To: Breno Leitao <leitao@debian.org>
Cc: SJ Park <sj@kernel.org>, Hugh Dickins <hughd@google.com>,
Baolin Wang <baolin.wang@linux.alibaba.com>,
Andrew Morton <akpm@linux-foundation.org>,
"Paul E. McKenney" <paulmck@kernel.org>,
linux-mm@kvack.org, linux-kernel@vger.kernel.org,
kernel-team@meta.com, stable@vger.kernel.org
Subject: Re: [PATCH] mm/shmem: report RCU-tasks quiescent states while undoing a range
Date: Fri, 18 Sep 2026 17:25:58 -0700 [thread overview]
Message-ID: <20260919002559.77365-1-sj@kernel.org> (raw)
In-Reply-To: <20260918-shmem-tasks-rcu-v1-1-79acf91a2569@debian.org>
On Fri, 18 Sep 2026 04:24:37 -0700 Breno Leitao <leitao@debian.org> wrote:
> This shows up in the Meta fleet on ftruncate() of large tmpfs files:
>
> INFO: rcu_tasks detected stalls on tasks:
> 00000000752fd185: .. nvcsw: 59455/59455 holdout: 1 idle_cpu: -1/0
> task:rocksdb:bottom state:R running task
> __folio_split
> find_get_entry
> find_get_entries
> truncate_inode_partial_folio
> shmem_undo_range
> shmem_setattr
> notify_change
> do_ftruncate
> __x64_sys_ftruncate
> do_syscall_64
>
> shmem_undo_range() walks the whole of the requested range in folio_batch
> sized steps, twice, and its two cond_resched() calls are the only
> reschedule points in that walk.
>
> cond_resched() is not an RCU-tasks quiescent state. Use
> cond_resched_tasks_rcu_qs() at both points so the walk reports an
> RCU-tasks quiescent state as it proceeds.
Makes sense to me.
Btw I wonder how many cond_resched() will survive from the Mutphy's machine.
Just thinking loud.
>
> Fixes: 8315f42295d2 ("rcu: Add call_rcu_tasks()")
> Cc: stable@vger.kernel.org
> Signed-off-by: Breno Leitao <leitao@debian.org>
Reviewed-by: SJ Park <sj@kernel.org>
Thanks,
SJ
[...]
prev parent reply other threads:[~2026-09-19 0:26 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-18 11:24 [PATCH] mm/shmem: report RCU-tasks quiescent states while undoing a range Breno Leitao
2026-09-18 19:32 ` Andrew Morton
2026-09-18 20:24 ` Paul E. McKenney
2026-09-18 20:43 ` Andrew Morton
2026-09-18 20:48 ` Paul E. McKenney
2026-09-19 0:25 ` SJ Park [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=20260919002559.77365-1-sj@kernel.org \
--to=sj@kernel.org \
--cc=akpm@linux-foundation.org \
--cc=baolin.wang@linux.alibaba.com \
--cc=hughd@google.com \
--cc=kernel-team@meta.com \
--cc=leitao@debian.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=paulmck@kernel.org \
--cc=stable@vger.kernel.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 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.