On Wed, Oct 22, 2025 at 07:16:05PM +0530, Shivang Upadhyay wrote:
> Currently, on ppc64 systems, kexec cannot directly use a
> user-provided devicetreeblob (dtb) when booting a new
> kernel with an initrd. This limitation exists because the
> dtb must be modified at runtime — for example, to include
> the initrd’s memory location and size, and to add
> /memreserve/ entries based on the current system memory
> layout.
> 
> Previously, kexec handled this by generating a fresh dtb in
> memory from the running system’s /proc/device-tree directory.
> However, this approach prevents users from making
> intentional modifications to the dtb — such as changin boot
> arguments, enabling or disabling devices, or testing kernel
> changes that depend on specific device tree properties.
> 
> Adding support for user-provided dtb (with appropriate
> patching by kexec) allows more control for developers,
> particularly when experimenting with custom kernels or
> hardware configurations.
> 
> This patch series lifts this restriction and ensures that
> the necessary /memreserve/ sections are properly added to
> the new DTB. on ppc64, it is mandatory, for the rebooting
> cpu to be present in the new kernel’s dtb, so additional
> logic has been added to identify and mark one of available
> cpu as reboot cpu on currect system.
> 
> A new architecture-specific function, arch_do_unload(), has
> been introduced to perform the necessary cleanup during
> kexec unload. in ppc64, the reboot CPU changes due to kexec,
> and it gets reset back on kexec unload.
> 
> Shivang Upadhyay (4):
>   ppc64: ensure /memreserve/ sections exist in user-provided FDT
>   ppc64: handle reboot CPU in case of user provided DTB
>   Add arch_do_unload hook for arch-specific cleanup
>   ppc64: life the dtb and initrd restriction

Thanks, applied.

- ppc64: life the dtb and initrd restriction
  
https://git.kernel.org/pub/scm/utils/kernel/kexec/kexec-tools.git/commit/?id=4dc039779675
- Add arch_do_unload hook for arch-specific cleanup
  
https://git.kernel.org/pub/scm/utils/kernel/kexec/kexec-tools.git/commit/?id=bf4aa2a1f365
- ppc64: handle reboot CPU in case of user provided DTB
  
https://git.kernel.org/pub/scm/utils/kernel/kexec/kexec-tools.git/commit/?id=39631c8fd64f
- ppc64: ensure /memreserve/ sections exist in user-provided FDT
  
https://git.kernel.org/pub/scm/utils/kernel/kexec/kexec-tools.git/commit/?id=32f664bfa479


Reply via email to