From dcbaa51b7569260fa3e266571efd1e1d7e604659 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vin=C3=ADcius=20Ferr=C3=A3o?= <2031761+viniciusferrao@users.noreply.github.com> Date: Fri, 21 Aug 2026 00:05:48 -0300 Subject: [PATCH] fix(xCAT-server): stop the EL10 installer reserving a crash kernel riscv64 cannot use EL10 defines no default crash kernel reservation for riscv64, so the installer's kdump add-on falls back to writing the literal "crashkernel=auto" into the boot loader arguments of the installed system. EL10 kernels dropped support for that value: nothing is reserved, but the string is on the command line, so kdump.service passes its condition and then fails on every installed riscv64 node. Turn the add-on off in the riscv64 templates. Nodes come up with kdump inactive instead of failed, and a node that should take crash dumps gets a real reservation the usual way, through linuximage.addkcmdline or bootparams.addkcmdline. --- .../share/xcat/install/rh/compute.rhels10.riscv64.tmpl | 9 +++++++++ .../share/xcat/install/rh/service.rhels10.riscv64.tmpl | 9 +++++++++ .../xcat/install/rocky/compute.rocky10.riscv64.tmpl | 9 +++++++++ .../xcat/install/rocky/service.rocky10.riscv64.tmpl | 9 +++++++++ 4 files changed, 36 insertions(+) diff --git a/xCAT-server/share/xcat/install/rh/compute.rhels10.riscv64.tmpl b/xCAT-server/share/xcat/install/rh/compute.rhels10.riscv64.tmpl index 68e3817cb..dbf34f13c 100644 --- a/xCAT-server/share/xcat/install/rh/compute.rhels10.riscv64.tmpl +++ b/xCAT-server/share/xcat/install/rh/compute.rhels10.riscv64.tmpl @@ -31,6 +31,15 @@ firewall --disable selinux --disable reboot +# riscv64: EL10 has no default crash kernel reservation for this architecture +# (kdumpctl get-default-crashkernel is empty), so the installer's kdump add-on +# would write the literal "crashkernel=auto", which the kernel ignores: nothing +# is reserved and kdump.service fails on every node. Leave kdump off here; a +# node that should take crash dumps gets a real reservation through +# linuximage.addkcmdline or bootparams.addkcmdline (crashkernel=). +%addon com_redhat_kdump --disable +%end + # riscv64: the EL10 anaconda has no RISC-V EFI platform and always asks for the # x86 UEFI boot loader packages (grub2-efi-x64, shim-x64), which do not exist # for riscv64; tolerate that. The riscv64 package list pulls grub2-efi-riscv64 diff --git a/xCAT-server/share/xcat/install/rh/service.rhels10.riscv64.tmpl b/xCAT-server/share/xcat/install/rh/service.rhels10.riscv64.tmpl index 68e3817cb..dbf34f13c 100644 --- a/xCAT-server/share/xcat/install/rh/service.rhels10.riscv64.tmpl +++ b/xCAT-server/share/xcat/install/rh/service.rhels10.riscv64.tmpl @@ -31,6 +31,15 @@ firewall --disable selinux --disable reboot +# riscv64: EL10 has no default crash kernel reservation for this architecture +# (kdumpctl get-default-crashkernel is empty), so the installer's kdump add-on +# would write the literal "crashkernel=auto", which the kernel ignores: nothing +# is reserved and kdump.service fails on every node. Leave kdump off here; a +# node that should take crash dumps gets a real reservation through +# linuximage.addkcmdline or bootparams.addkcmdline (crashkernel=). +%addon com_redhat_kdump --disable +%end + # riscv64: the EL10 anaconda has no RISC-V EFI platform and always asks for the # x86 UEFI boot loader packages (grub2-efi-x64, shim-x64), which do not exist # for riscv64; tolerate that. The riscv64 package list pulls grub2-efi-riscv64 diff --git a/xCAT-server/share/xcat/install/rocky/compute.rocky10.riscv64.tmpl b/xCAT-server/share/xcat/install/rocky/compute.rocky10.riscv64.tmpl index 68e3817cb..dbf34f13c 100644 --- a/xCAT-server/share/xcat/install/rocky/compute.rocky10.riscv64.tmpl +++ b/xCAT-server/share/xcat/install/rocky/compute.rocky10.riscv64.tmpl @@ -31,6 +31,15 @@ firewall --disable selinux --disable reboot +# riscv64: EL10 has no default crash kernel reservation for this architecture +# (kdumpctl get-default-crashkernel is empty), so the installer's kdump add-on +# would write the literal "crashkernel=auto", which the kernel ignores: nothing +# is reserved and kdump.service fails on every node. Leave kdump off here; a +# node that should take crash dumps gets a real reservation through +# linuximage.addkcmdline or bootparams.addkcmdline (crashkernel=). +%addon com_redhat_kdump --disable +%end + # riscv64: the EL10 anaconda has no RISC-V EFI platform and always asks for the # x86 UEFI boot loader packages (grub2-efi-x64, shim-x64), which do not exist # for riscv64; tolerate that. The riscv64 package list pulls grub2-efi-riscv64 diff --git a/xCAT-server/share/xcat/install/rocky/service.rocky10.riscv64.tmpl b/xCAT-server/share/xcat/install/rocky/service.rocky10.riscv64.tmpl index 00364f2ac..b7c6dc41e 100644 --- a/xCAT-server/share/xcat/install/rocky/service.rocky10.riscv64.tmpl +++ b/xCAT-server/share/xcat/install/rocky/service.rocky10.riscv64.tmpl @@ -31,6 +31,15 @@ firewall --disable selinux --disable reboot +# riscv64: EL10 has no default crash kernel reservation for this architecture +# (kdumpctl get-default-crashkernel is empty), so the installer's kdump add-on +# would write the literal "crashkernel=auto", which the kernel ignores: nothing +# is reserved and kdump.service fails on every node. Leave kdump off here; a +# node that should take crash dumps gets a real reservation through +# linuximage.addkcmdline or bootparams.addkcmdline (crashkernel=). +%addon com_redhat_kdump --disable +%end + # riscv64: the EL10 anaconda has no RISC-V EFI platform and always asks for the # x86 UEFI boot loader packages (grub2-efi-x64, shim-x64), which do not exist # for riscv64; tolerate that. The riscv64 package list pulls grub2-efi-riscv64