The commit:
- 2ab2d5794f14 powerpc/kasan: Disable address sanitization in kexec paths
was not backported to the 5.15 stable tree upstream (see 
https://lore.kernel.org/all/2024070819-steering-gag-75e6@gregkh/)

A backport to Jammy tree is needed.
Patch sent to KTML:
https://lists.ubuntu.com/archives/kernel-team/2025-April/159143.html

Marking the bug as "In Progress"

** Description changed:

- == Comment: #0 - SEETEENA THOUFEEK <[email protected]> - 2024-08-02 
03:11:31 ==
- +++ This bug was initially created as a clone of Bug #206083 +++
+ [ Impact ]
  
- ---Problem Description---
- kexec fails in LPAR when some cpus are disabled
-  
- Contact Information = [email protected] 
-  
- Machine Type = na 
-  
- ---uname output---
- na
-  
- ---Debugger---
- A debugger is not configured
-  
- ---Steps to Reproduce---
-  Summary:
- At L1 level, kexec fails if some of the cpus in the machine are disabled.
+ powerpc/pseries: Fix scv instruction crash with kexec
  
+ kexec on pseries disables AIL (reloc_on_exc), required for scv
+ instruction support, before other CPUs have been shut down. This means
+ they can execute scv instructions after AIL is disabled, which causes an
+ interrupt at an unexpected entry location that crashes the kernel.
  
- Distros and kernel  versions used:
- 1. Distro versions used
+ Change the kexec sequence to disable AIL after other CPUs have been
+ brought down.
  
-   a. L1 LPAR :
+ As a refresher, the real-mode scv interrupt vector is 0x17000, and the
+ fixed-location head code probably couldn't easily deal with implementing
+ such high addresses so it was just decided not to support that interrupt
+ at all.
  
-   b. L2 :
+ [ Fix ]
  
+ Backport the following commit:
+ - 21a741eb75f8 powerpc/pseries: Fix scv instruction crash with kexec
+ from upstream.
+ 
+ [ Test Plan ]
  
  Repro steps:
  1. Boot into an L1 lpar
  2. Disable some cpus (eg: ppc64_cpu --cores-on=3)
- 3. Try to kexec. 
+ 3. Try to kexec.
  
- 
- This bug is reproducible only when we load the target kernel/initrd and use 
"kexec -e" as follows:
+ This bug is reproducible only when we load the target kernel/initrd and
+ use "kexec -e" as follows:
  
  kexec -l --initrd initramfs-$(uname -r).img vmlinuz-$(uname -r)
  --append="$(cat /proc/cmdline)"
  
  kexec -e
  
- 
- kexec works fine if we do a normal kexec without skipping the shutdown path
+ kexec works fine if we do a normal kexec without skipping the shutdown
+ path
  
  kexec --initrd initramfs-$(uname -r).img vmlinuz-$(uname -r)
  --append="$(cat /proc/cmdline)"
  
+ [ Where problems could occur ]
+ 
+ The fix affects the PowerPC pSeries kexec sequence.
+ A problem with this fix may manifest as system instability
+ during a kexec transition, unexpected exceptions in early boot of the new 
kernel, or complete system crashes when attempting to perform a kernel reboot 
via kexec.
+ 
+ ---
+ 
+ == Comment: #0 - SEETEENA THOUFEEK <[email protected]> - 2024-08-02 
03:11:31 ==
+ +++ This bug was initially created as a clone of Bug #206083 +++
+ 
+ ---Problem Description---
+ kexec fails in LPAR when some cpus are disabled
+ 
+ Contact Information = [email protected]
+ 
+ Machine Type = na
+ 
+ ---uname output---
+ na
+ 
+ ---Debugger---
+ A debugger is not configured
+ 
+ ---Steps to Reproduce---
+  Summary:
+ At L1 level, kexec fails if some of the cpus in the machine are disabled.
+ 
+ Distros and kernel  versions used:
+ 1. Distro versions used
+ 
+   a. L1 LPAR :
+ 
+   b. L2 :
+ 
+ Repro steps:
+ 1. Boot into an L1 lpar
+ 2. Disable some cpus (eg: ppc64_cpu --cores-on=3)
+ 3. Try to kexec.
+ 
+ This bug is reproducible only when we load the target kernel/initrd and
+ use "kexec -e" as follows:
+ 
+ kexec -l --initrd initramfs-$(uname -r).img vmlinuz-$(uname -r)
+ --append="$(cat /proc/cmdline)"
+ 
+ kexec -e
+ 
+ kexec works fine if we do a normal kexec without skipping the shutdown
+ path
+ 
+ kexec --initrd initramfs-$(uname -r).img vmlinuz-$(uname -r)
+ --append="$(cat /proc/cmdline)"
  
  Fix is upstream now:
  
https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/commit/?id=21a741eb75f80397e5f7d3739e24d7d75e619011
  
  Thanks,
  Sourabh Jain
  
  please include in Ubuntu
  
-  
  Oops output:
-  no
-  
+  no
+ 
  Stack trace output:
-  no
-  
+  no
+ 
  System Dump Info:
-   The system is not configured to capture a system dump.
-  
- *Additional Instructions for [email protected]: 
+   The system is not configured to capture a system dump.
+ 
+ *Additional Instructions for [email protected]:
  -Attach sysctl -a output output to the bug.

** Changed in: linux (Ubuntu Jammy)
       Status: Triaged => In Progress

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2075575

Title:
  kexec fails in LPAR when some cpus are disabled

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu-power-systems/+bug/2075575/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to