On Wed, Oct 21, 2026 at 09:37:51AM +0100, Jonathan McDowell wrote: > On Tue, Oct 20, 2026 at 10:37:27AM +0200, Roberto Sassu wrote: > > From: Roberto Sassu <[email protected]> > > > > On x86, if CONFIG_OF_FLATTREE is enabled, the kernel uses the device tree > > implementation of ima_get/free_kexec_buffer(). However, x86 passes the IMA > > buffer location through setup_data, not through the device tree, so the > > buffer is never found and the IMA measurement list is not carried over > > across kexec. > > > > Introduce CONFIG_HAVE_IMA_KEXEC_OF (which selects CONFIG_HAVE_IMA_KEXEC) > > and select it for the architectures that pass the IMA buffer location > > through the device tree, via of_kexec_alloc_and_setup_fdt() (arm64, > > powerpc and riscv). Build the device tree implementation of > > ima_get/free_kexec_buffer() only if the new option is enabled. > > > > Select the new option also on LoongArch, to preserve the current behavior > > and avoid a link failure. LoongArch does not pass the buffer location to > > the next kernel yet; this will be addressed separately. > > > > Finally, don't select it for x86, and use x86's own setup_data-based > > implementation regardless of CONFIG_OF_FLATTREE. > > > > Fixes: b69a2afd5afc ("x86/kexec: Carry forward IMA measurement log on > > kexec") > > Signed-off-by: Roberto Sassu <[email protected]> > > Reviewed-By: Jonathan McDowell <[email protected]>
Please use kernel style tags, so Reviewed-by. Best regards, Krzysztof
