Tested the membarrier expedited IPI loop on 6.8.0, and the call trace points directly to a known race in multi_cpu_stop() on legacy multi-node NUMA:
In 6.8.0, membarrier(MEMBARRIER_CMD_PRIVATE_EXPEDITED) heavily relies on cpu_stopper (the migration/X kernel threads) to force remote CPUs out of userspace. On AMD Opteron 6300 (Family 15h Bulldozer/Piledriver modules) across 4 NUMA nodes, KVM vCPU threads frequently enter idle/mwait while multi_cpu_stop is synchronizing. When the cpu_stopper thread on a remote core attempts to preempt a CPU that is transitioning through swapper, the scheduler detects a non-fatal signal/exit condition on the idle thread and panics with: "Attempted to kill the idle task!" Two practical tests to verify this on your DL385p hosts: 1. Test restricting idle C-states in /etc/default/grub: processor.max_cstate=1 idle=nomwait 2. Or disable KVM halt-polling: options kvm halt_poll_ns=0 If pinning idle states stops the multi_cpu_stop crash under your Kubernetes/KVM load, this isolates the bug to the IPI/cpu_stopper race with Opteron shared-FPU core modules on the 6.8 scheduler -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/2163642 Title: Kernel panic "Attempted to kill the idle task" on AMD Opteron multi- node NUMA under KVM (6.8.0-137) To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/2163642/+subscriptions -- ubuntu-bugs mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
