[PATCH v2] kexec: Select ima_get/free_kexec_buffer() with CONFIG_HAVE_IMA_KEXEC(_OF)
Krzysztof Kozlowski
krzk at kernel.org
Thu Oct 22 02:59:35 PDT 2026
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 <roberto.sassu at huawei.com>
> >
> > 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 <roberto.sassu at huawei.com>
>
> Reviewed-By: Jonathan McDowell <noodles at meta.com>
Please use kernel style tags, so Reviewed-by.
Best regards,
Krzysztof
More information about the linux-riscv
mailing list