From: Tejun Heo <tj@kernel.org>
To: Ben Greear <greearb@candelatech.com>
Cc: Johannes Berg <johannes@sipsolutions.net>,
linux-wireless <linux-wireless@vger.kernel.org>,
Korenblit@kvack.org,
Miriam Rachel <miriam.rachel.korenblit@intel.com>,
linux-mm@kvack.org, linux-kernel@vger.kernel.org
Subject: Re: 6.18.13 iwlwifi deadlock allocating cma while work-item is active.
Date: Wed, 04 Mar 2026 07:14:43 -1000 [thread overview]
Message-ID: <68c1ca1381d1871fff72b211890a64eb@kernel.org> (raw)
In-Reply-To: <de003dc3-3e37-f238-4250-2df16eeb77d6@candelatech.com>
Hello,
(Partially drafted with the help of Claude)
On Tue, Mar 03, 2026 at 04:02:14PM -0800, Ben Greear wrote:
> Could the logic that detects blocked work-queues instead be instrumented
> to print out more useful information so that just reproducing the problem
> and providing dmesg output will be sufficient? Or does dmesg already provide
> enough that would give you a clue as to what is going on?
It may not be exactly the same issue, but Breno just posted a patch that
might help. The current watchdog only prints backtraces for workers that
are actively running on CPU, so sleeping culprits are invisible. His
patch removes that filter so all in-flight workers get printed:
http://lkml.kernel.org/r/aag4tTyeiZyw0jID@gmail.com
Might be worth trying.
> If I were to attempt to use AI on the coredump, would echoing 'c' to
> /proc/sysrq-trigger with kdump enabled (when deadlock is happening) be
> the appropriate action to grab the core file?
Yes, that's right, but you need to set up kdump first. The quickest way
depends on your distro:
- Fedora/RHEL: dnf install kexec-tools, then kdumpctl reset-crashkernel,
systemctl enable --now kdump
- Ubuntu/Debian: apt install kdump-tools (say Yes to enable), reboot
- Arch: Install kexec-tools, add crashkernel=512M to your kernel
cmdline, create a kdump.service that runs
kexec -p /boot/vmlinuz-linux --initrd=/boot/initramfs-linux.img \
--append="root=<your-root> irqpoll nr_cpus=1 reset_devices"
After reboot, verify with: cat /sys/kernel/kexec_crash_size (should be
non-zero). Then when the deadlock happens:
echo c > /proc/sysrq-trigger
The system will panic and boot into the kdump kernel. Note that the
kdump kernel runs with very limited memory, so you can't do much there
directly. Use makedumpfile to save a compressed dump to disk:
makedumpfile -l -d 31 /proc/vmcore /var/crash/vmcore
Most distros' kdump setups do this automatically. Once the dump is saved,
the system reboots back to normal and you can analyze it at your leisure
with drgn:
drgn -c /var/crash/vmcore
Thanks.
--
tejun
next prev parent reply other threads:[~2026-03-04 17:14 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-02-23 22:36 Ben Greear
2026-02-27 16:31 ` Ben Greear
2026-03-01 15:38 ` Ben Greear
2026-03-02 8:07 ` Johannes Berg
2026-03-02 15:26 ` Ben Greear
2026-03-02 15:38 ` Johannes Berg
2026-03-02 15:50 ` Ben Greear
2026-03-03 11:49 ` Johannes Berg
2026-03-03 20:52 ` Tejun Heo
2026-03-03 21:03 ` Johannes Berg
2026-03-03 21:12 ` Johannes Berg
2026-03-03 21:40 ` Ben Greear
2026-03-03 21:54 ` Tejun Heo
2026-03-04 0:02 ` Ben Greear
2026-03-04 17:14 ` Tejun Heo [this message]
2026-03-04 3:08 ` Hillf Danton
2026-03-04 6:57 ` Johannes Berg
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=68c1ca1381d1871fff72b211890a64eb@kernel.org \
--to=tj@kernel.org \
--cc=Korenblit@kvack.org \
--cc=greearb@candelatech.com \
--cc=johannes@sipsolutions.net \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=linux-wireless@vger.kernel.org \
--cc=miriam.rachel.korenblit@intel.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