New Debian sparc64 test kernel for stack corruption issue
Hi,
NRoach44 on the #debian-ports IRC channel has determined that turning off
the following two configuration options in the Linux kernel,
- CONFIG_SLAB_FREELIST_HARDENED
- CONFIG_SLAB_FREELIST_RANDOM
fixes the following crash:
[ 25.528376] Kernel panic - not syncing: corrupted stack end detected inside scheduler
[ 25.528384] CPU: 149 UID: 0 PID: 2305 Comm: (udev-worker) Tainted: G W 6.17.3-1760771931-debmod #13 NONE
[ 25.528395] Tainted: [W]=WARN
[ 25.528399] Call Trace:
[ 25.528403] [<0000000000433cd4>] dump_stack+0x8/0x18
[ 25.528419] [<00000000004297ac>] vpanic+0xdc/0x318
[ 25.528429] [<0000000000429a0c>] panic+0x24/0x30
[ 25.528436] [<0000000000be2280>] __schedule+0xa8/0x7bc
[ 25.528445] [<0000000000be2b60>] schedule+0x24/0x4c
[ 25.528452] [<0000000000be6970>] schedule_timeout+0xc8/0xe4
[ 25.528459] [<0000000000be3318>] __wait_for_common+0x78/0xf0
[ 25.528466] [<0000000000be3550>] wait_for_completion_timeout+0x1c/0x2c
[ 25.528473] [<000000001005e2f4>] usb_start_wait_urb+0x68/0x128 [usbcore]
[ 25.528502] [<000000001005e468>] usb_control_msg+0xb4/0xf8 [usbcore]
[ 25.528518] [<0000000010051180>] set_port_feature+0x44/0x54 [usbcore]
[ 25.528530] [<00000000100530f0>] hub_power_on+0xc8/0xe8 [usbcore]
[ 25.528543] [<0000000010054fd8>] hub_activate+0x12c/0x644 [usbcore]
[ 25.528557] [<0000000010059438>] hub_probe+0xdd4/0xeb0 [usbcore]
[ 25.528570] [<0000000010062360>] usb_probe_interface+0x234/0x26c [usbcore]
[ 25.528585] [<0000000000a10a40>] really_probe+0x1ac/0x3b0
[ 26.606260] Press Stop-A (L1-A) from sun keyboard or send break
[ 26.606260] twice on console to return to the boot prom
[ 26.628265] ---[ end Kernel panic - not syncing: corrupted stack end detected inside scheduler ]---
I have created UMP and SMP test kernel Debian packages to verify this:
https://people.debian.org/~glaubitz/sparc64/
Could someone test this kernel? It works for me in a SPARC T4 LDOM.
FWIW, the kernel does *not* yet include the fixes for accurate exception reporting [1],
so expect that the kernels may not be stable on older UltraSPARC systems. The fixes for
that will be included in 6.17.3 or newer or 6.18 or newer.
A GitHub issue has been opened for this bug in [2].
Adrian
> [1] https://github.com/sparclinux/issues/issues/1
> [2] https://github.com/sparclinux/issues/issues/14
--
.''`. John Paul Adrian Glaubitz
: :' : Debian Developer
`. `' Physicist
`- GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913
Reply to: