[PATCH v5 8/8] loongarch: efi: enable generic EFI compressed boot

陈华才 chenhuacai at loongson.cn
Mon Sep 12 07:45:42 PDT 2022


Hi, Ard,


> -----原始邮件-----
> 发件人: "Ard Biesheuvel" <ardb at kernel.org>
> 发送时间:2022-09-12 18:18:05 (星期一)
> 收件人: "陈华才" <chenhuacai at loongson.cn>
> 抄送: linux-efi at vger.kernel.org, linux-arm-kernel at lists.infradead.org, linux-kernel at vger.kernel.org, "James E.J. Bottomley" <James.Bottomley at hansenpartnership.com>, "Matthew Garrett" <mjg59 at srcf.ucam.org>, "Peter Jones" <pjones at redhat.com>, "Ilias Apalodimas" <ilias.apalodimas at linaro.org>, "Heinrich Schuchardt" <heinrich.schuchardt at canonical.com>, "AKASHI Takahiro" <takahiro.akashi at linaro.org>, "Palmer Dabbelt" <palmer at dabbelt.com>, "Atish Patra" <atishp at atishpatra.org>, "Arnd Bergmann" <arnd at arndb.de>, "Xi Ruoyao" <xry111 at xry111.site>, "Lennart Poettering" <lennart at poettering.net>, "Jeremy Linton" <jeremy.linton at arm.com>, "Will Deacon" <will at kernel.org>, "Catalin Marinas" <catalin.marinas at arm.com>
> 主题: Re: Re: [PATCH v5 8/8] loongarch: efi: enable generic EFI compressed boot
> 
> On Sun, 11 Sept 2022 at 16:03, 陈华才 <chenhuacai at loongson.cn> wrote:
> >
> >
> >
> >
> > > -----原始邮件-----
> > > 发件人: "Ard Biesheuvel" <ardb at kernel.org>
> > > 发送时间:2022-09-10 22:28:04 (星期六)
> > > 收件人: "陈华才" <chenhuacai at loongson.cn>
> > > 抄送: linux-efi at vger.kernel.org, linux-arm-kernel at lists.infradead.org, linux-kernel at vger.kernel.org, "James E.J. Bottomley" <James.Bottomley at hansenpartnership.com>, "Matthew Garrett" <mjg59 at srcf.ucam.org>, "Peter Jones" <pjones at redhat.com>, "Ilias Apalodimas" <ilias.apalodimas at linaro.org>, "Heinrich Schuchardt" <heinrich.schuchardt at canonical.com>, "AKASHI Takahiro" <takahiro.akashi at linaro.org>, "Palmer Dabbelt" <palmer at dabbelt.com>, "Atish Patra" <atishp at atishpatra.org>, "Arnd Bergmann" <arnd at arndb.de>, "Xi Ruoyao" <xry111 at xry111.site>, "Lennart Poettering" <lennart at poettering.net>, "Jeremy Linton" <jeremy.linton at arm.com>, "Will Deacon" <will at kernel.org>, "Catalin Marinas" <catalin.marinas at arm.com>
> > > 主题: Re: [PATCH v5 8/8] loongarch: efi: enable generic EFI compressed boot
> > >
> > > On Sat, 10 Sept 2022 at 15:22, 陈华才 <chenhuacai at loongson.cn> wrote:
> > > >
> > > > Hi, Ard,
> > > >
> > > > I prefer to give a chance to disable ZBOOT, so I don't want to select EFI_ZBOOT unconditionally in Kconfig, and then the Makefile can be like this:
> > > > diff --git a/arch/loongarch/Makefile b/arch/loongarch/Makefile
> > > > index c3f579bdf9e5..bc6fe65125f5 100644
> > > > --- a/arch/loongarch/Makefile
> > > > +++ b/arch/loongarch/Makefile
> > > > @@ -14,6 +14,10 @@ else
> > > >  KBUILD_IMAGE   := $(boot)/vmlinux.efi
> > > >  endif
> > > >
> > > > +ifdef CONFIG_EFI_ZBOOT
> > > > +KBUILD_IMAGE    := $(boot)/vmlinuz.efi
> > > > +endif
> > > > +
> > > >  archscripts: scripts_basic
> > > >         $(Q)$(MAKE) $(build)=arch/loongarch/boot/tools relocs
> > > >
> > >
> > > OK, I will fold this in. This actually aligns it with the other
> > > architectures, so I prefer this approach as well.
> >
> > Thank you, and if "make install" can also handle the zboot case, that's even better. :)
> >
> > diff --git a/arch/loongarch/Makefile b/arch/loongarch/Makefile
> > index c3f579bdf9e5..5480fe2de7cd 100644
> > --- a/arch/loongarch/Makefile
> > +++ b/arch/loongarch/Makefile
> > @@ -137,7 +137,11 @@ vmlinux.elf vmlinux.efi vmlinuz.efi: vmlinux
> >  core-y += arch/loongarch/boot/dts/
> >
> >  install:
> > +ifndef CONFIG_EFI_ZBOOT
> >         $(Q)install -D -m 755 $(KBUILD_IMAGE) $(INSTALL_PATH)/vmlinux-$(KERNELRELEASE)
> > +else
> > +       $(Q)install -D -m 755 $(KBUILD_IMAGE) $(INSTALL_PATH)/vmlinuz-$(KERNELRELEASE)
> > +endif
> >         $(Q)install -D -m 644 .config $(INSTALL_PATH)/config-$(KERNELRELEASE)
> >         $(Q)install -D -m 644 System.map $(INSTALL_PATH)/System.map-$(KERNELRELEASE)
> >
> 
> Is there any reason in particular this is open coded like this? Other
> architectures just do something like
> 
> install:
>     $(call cmd,install)
> 
> and be done with it.
It seems that there are two problems:
1, the default install script doesn't install the configuration file;
2, the kernel name in "installkernel" isn't the same as the open coded version, it looks like this:
if [ $ARCH = 'ppc64' -o $ARCH = 'ppc' ]; then
    KERNEL_NAME=vmlinux
else
    KERNEL_NAME=vmlinuz
fi

Maybe we can provide an arch-specific install.sh as arm64 does, but it is even more complex than the open coded version.

Huacai



本邮件及其附件含有龙芯中科的商业秘密信息,仅限于发送给上面地址中列出的个人或群组。禁止任何其他人以任何形式使用(包括但不限于全部或部分地泄露、复制或散发)本邮件及其附件中的信息。如果您错收本邮件,请您立即电话或邮件通知发件人并删除本邮件。 
This email and its attachments contain confidential information from Loongson Technology , which is intended only for the person or entity whose address is listed above. Any use of the information contained herein in any way (including, but not limited to, total or partial disclosure, reproduction or dissemination) by persons other than the intended recipient(s) is prohibited. If you receive this email in error, please notify the sender by phone or email immediately and delete it. 


More information about the linux-arm-kernel mailing list