Please read this before reporting a bug:
https://wiki.archlinux.org/title/Bug_reporting_guidelines
Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.
REPEAT: Do NOT report bugs for outdated packages!
https://wiki.archlinux.org/title/Bug_reporting_guidelines
Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.
REPEAT: Do NOT report bugs for outdated packages!
FS#76354 - [linux] NULL pointer dereference since 6.0.5-arch1-1
Attached to Project:
Arch Linux
Opened by Roland Ruckerbauer (ruabmbua) - Monday, 31 October 2022, 12:00 GMT
Last edited by Toolybird (Toolybird) - Tuesday, 15 November 2022, 05:35 GMT
Opened by Roland Ruckerbauer (ruabmbua) - Monday, 31 October 2022, 12:00 GMT
Last edited by Toolybird (Toolybird) - Tuesday, 15 November 2022, 05:35 GMT
|
DetailsDescription:
Since booting into the 6.0.5 and 6.0.6 kernel my audio stopped working. When investigating I found, that the pipewire process is frozen and can not be killed. Next I tried alsamixer, it did not start, and the process is also frozen and not kill-able. Then I checked kernel logs, and found a NULL pointer dereference and a "supervisor write access in kernel mode". The bug is easily reproducible in both 6.0.5 and 6.0.6 kernels. Kernel log is attached below. Additional info: * Bad versions: 6.0.5-arch1-1 6.0.6-arch1-1 * Good versions 6.0.2-arch1-1 Steps to reproduce: 1) Boot into 6.0.5 or newer kernel, and look into dmesg? |
This task depends upon
Closed by Toolybird (Toolybird)
Tuesday, 15 November 2022, 05:35 GMT
Reason for closing: Fixed
Additional comments about closing: linux 6.0.8.arch1-1
Tuesday, 15 November 2022, 05:35 GMT
Reason for closing: Fixed
Additional comments about closing: linux 6.0.8.arch1-1
dmesg.log
After disabling it, it seems that the crash and subsequent audio freeze is no longer triggered.
# pacman -U https://archive.archlinux.org/packages/l/linux/linux-6.0.3.arch3-1-x86_64.pkg.tar.zst
[1] https://wiki.archlinux.org/title/Arch_Linux_Archive#How_to_downgrade_one_package
https://linkshortner.net/dyvLZ
First noticed Firefox crashing, and even on a new profile still crashes reliably when trying to right-click any tab.
Had issues shutting down -- only SysRq sync was processed and echoed but system never halted and SysRq+B was not respected.
6.0.3.arch3 still had issues, 6.0.2.arch1 is working well.
Even latest 5.15 LTS may have had issues, not certain, but I need to actually use my system now instead of testing again :)
[1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/stable-queue.git/commit/queue-6.0?id=20d0511e2d90c5d0d554cc00ed6f7225cefe5a2d
[2] https://git.kernel.org/pub/scm/linux/kernel/git/stable/stable-queue.git/commit/queue-5.15?id=61b043bba9968212bb27ae28a55fb084bec0dc48
OP opened a bug report upstream[1], thank you!
[1] https://github.com/mchehab/rasdaemon/issues/73
I've been having the same issues on the 6.0.6-zen1-1-zen and the "vanilla" 6.0.6.arch1-1 kernel (AFAIR).
diff --git a/kernel/trace/ring_buffer.c b/kernel/trace/ring_buffer.c
index 199759c73519..4ffcc6e33258 100644
--- a/kernel/trace/ring_buffer.c
+++ b/kernel/trace/ring_buffer.c
@@ -937,6 +937,9 @@ void ring_buffer_wake_waiters(struct trace_buffer *buffer, int cpu)
struct ring_buffer_per_cpu *cpu_buffer;
struct rb_irq_work *rbwork;
+ if (!buffer)
+ return;
+
if (cpu == RING_BUFFER_ALL_CPUS) {
/* Wake up individual ones too. One level recursion */
@@ -945,7 +948,14 @@ void ring_buffer_wake_waiters(struct trace_buffer *buffer, int cpu)
rbwork = &buffer->irq_work;
} else {
+ if (WARN_ON_ONCE(!buffer->buffers))
+ return;
+ if (WARN_ON_ONCE(cpu >= nr_cpu_ids))
+ return;
cpu_buffer = buffer->buffers[cpu];
+ /* The CPU buffer may not have been initialized yet */
+ if (!cpu_buffer)
+ return;
rbwork = &cpu_buffer->irq_work;
}
[1] https://lore.kernel.org/all/20221101191009.1e7378c8%40rorschach.local.home/
[1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/stable-queue.git/commit/queue-6.0/ring-buffer-check-for-null-cpu_buffer-in-ring_buffer_wake_waiters.patch?id=83d0065763ff5ae2be60a854676ded72e614afd1
Thank you all!