On Tue, Aug 19, 2025 at 09:24:26AM +0800, Pingfan Liu wrote: > Now everything is ready for kexec PE image parser. Select it on arm64 > for zboot and UKI image support. > > Signed-off-by: Pingfan Liu <pi...@redhat.com> > Acked-by: Catalin Marinas <catalin.mari...@arm.com> > Cc: Will Deacon <w...@kernel.org> > To: linux-arm-ker...@lists.infradead.org > --- > arch/arm64/Kconfig | 1 + > arch/arm64/include/asm/kexec.h | 1 + > arch/arm64/kernel/machine_kexec_file.c | 3 +++ > 3 files changed, 5 insertions(+) > > diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig > index e9bbfacc35a64..97d9595a5ee86 100644 > --- a/arch/arm64/Kconfig > +++ b/arch/arm64/Kconfig > @@ -1608,6 +1608,7 @@ config ARCH_SELECTS_KEXEC_FILE > def_bool y > depends on KEXEC_FILE > select HAVE_IMA_KEXEC if IMA > + select KEXEC_PE_IMAGE
According to the kernel test robot's report, this may fail due to a dependency issue. I will fix it in the next version as: select KEXEC_PE_IMAGE if DEBUG_INFO_BTF && BPF_SYSCALL This dependency is introduced in patch [5/12]. Cc Catalin, since I'm making changes to address this issue, I'll drop your ack in the next version and would appreciate if you could review it again. Thanks, Pingfan > > config ARCH_SUPPORTS_KEXEC_SIG > def_bool y > diff --git a/arch/arm64/include/asm/kexec.h b/arch/arm64/include/asm/kexec.h > index 4d9cc7a76d9ca..d50796bd2f1e6 100644 > --- a/arch/arm64/include/asm/kexec.h > +++ b/arch/arm64/include/asm/kexec.h > @@ -120,6 +120,7 @@ struct kimage_arch { > > #ifdef CONFIG_KEXEC_FILE > extern const struct kexec_file_ops kexec_image_ops; > +extern const struct kexec_file_ops kexec_pe_image_ops; > > int arch_kimage_file_post_load_cleanup(struct kimage *image); > #define arch_kimage_file_post_load_cleanup arch_kimage_file_post_load_cleanup > diff --git a/arch/arm64/kernel/machine_kexec_file.c > b/arch/arm64/kernel/machine_kexec_file.c > index af1ca875c52ce..7c544c385a9ab 100644 > --- a/arch/arm64/kernel/machine_kexec_file.c > +++ b/arch/arm64/kernel/machine_kexec_file.c > @@ -24,6 +24,9 @@ > > const struct kexec_file_ops * const kexec_file_loaders[] = { > &kexec_image_ops, > +#ifdef CONFIG_KEXEC_PE_IMAGE > + &kexec_pe_image_ops, > +#endif > NULL > }; > > -- > 2.49.0 >