From: Raghavendra K T <raghavendra.kt@amd.com>
To: Kent Overstreet <kent.overstreet@linux.dev>,
linux-mm@kvack.org, linux-ext4@vger.kernel.org,
linux-fsdevel@vger.kernel.org
Cc: wqu@suse.com
Subject: Re: scheduling while atomic on rc3 - migration + buffer heads
Date: Mon, 21 Apr 2025 21:17:18 +0530 [thread overview]
Message-ID: <7b395468-d72d-42c1-b891-75f127a1c534@amd.com> (raw)
In-Reply-To: <hdqfrw2zii53qgyqnq33o4takgmvtgihpdeppkcsayn5wrmpyu@o77ad4o5gjlh>
On 4/21/2025 8:44 PM, Kent Overstreet wrote:
+Qu as I see similar report from him
> This just popped up in one of my test runs.
>
> Given that it's buffer heads, it has to be the ext4 root filesystem, not
> bcachefs.
>
> 00465 ========= TEST lz4_buffered
> 00465
> 00465 WATCHDOG 360
> 00466 bcachefs (vdb): starting version 1.25: extent_flags opts=errors=panic,compression=lz4
> 00466 bcachefs (vdb): initializing new filesystem
> 00466 bcachefs (vdb): going read-write
> 00466 bcachefs (vdb): marking superblocks
> 00466 bcachefs (vdb): initializing freespace
> 00466 bcachefs (vdb): done initializing freespace
> 00466 bcachefs (vdb): reading snapshots table
> 00466 bcachefs (vdb): reading snapshots done
> 00466 bcachefs (vdb): done starting filesystem
> 00466 starting copy
> 00515 BUG: sleeping function called from invalid context at mm/util.c:743
> 00515 in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 120, name: kcompactd0
> 00515 preempt_count: 1, expected: 0
> 00515 RCU nest depth: 0, expected: 0
> 00515 1 lock held by kcompactd0/120:
> 00515 #0: ffffff80c0c558f0 (&mapping->i_private_lock){+.+.}-{3:3}, at: __buffer_migrate_folio+0x114/0x298
> 00515 Preemption disabled at:
> 00515 [<ffffffc08025fa84>] __buffer_migrate_folio+0x114/0x298
> 00515 CPU: 11 UID: 0 PID: 120 Comm: kcompactd0 Not tainted 6.15.0-rc3-ktest-gb2a78fdf7d2f #20530 PREEMPT
> 00515 Hardware name: linux,dummy-virt (DT)
> 00515 Call trace:
> 00515 show_stack+0x1c/0x30 (C)
> 00515 dump_stack_lvl+0xb0/0xc0
> 00515 dump_stack+0x14/0x20
> 00515 __might_resched+0x180/0x288
> 00515 folio_mc_copy+0x54/0x98
> 00515 __migrate_folio.isra.0+0x68/0x168
> 00515 __buffer_migrate_folio+0x280/0x298
> 00515 buffer_migrate_folio_norefs+0x18/0x28
> 00515 migrate_pages_batch+0x94c/0xeb8
> 00515 migrate_pages_sync+0x84/0x240
> 00515 migrate_pages+0x284/0x698
> 00515 compact_zone+0xa40/0x10f8
> 00515 kcompactd_do_work+0x204/0x498
> 00515 kcompactd+0x3c4/0x400
> 00515 kthread+0x13c/0x208
> 00515 ret_from_fork+0x10/0x20
> 00518 starting sync
> 00519 starting rm
> 00520 ========= FAILED TIMEOUT lz4_buffered in 360s
>
I have also seen similar stack with folio_mc_copy() while testing
PTE A bit patches.
IIUC, it has something to do with cond_resched() called from
folio_mc_copy().
(Thomas (tglx) mentioned long back that cond_resched() does not have the
scope awareness), not sure where should the fix be done in these
cases..
(I mean caller of the migrate_folio should call with no spinlock held
but with mutex? )
Regards
- Raghu
next prev parent reply other threads:[~2025-04-21 15:47 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-04-21 15:14 Kent Overstreet
2025-04-21 15:47 ` Raghavendra K T [this message]
2025-04-21 15:55 ` Kent Overstreet
2025-04-21 17:27 ` Darrick J. Wong
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=7b395468-d72d-42c1-b891-75f127a1c534@amd.com \
--to=raghavendra.kt@amd.com \
--cc=kent.overstreet@linux.dev \
--cc=linux-ext4@vger.kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=wqu@suse.com \
/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