Re: [PATCH v3 12/14] efi/riscv: libstub: mark when compiling libstub

Ard Biesheuvel
2022-12-01T21:02:10Z

On Thu, 1 Dec 2022 at 20:35, Andrew Jones <ajones@ventanamicro.com> wrote:
>
> On Wed, Nov 30, 2022 at 11:56:12PM +0100, Heiko Stuebner wrote:
> > From: Heiko Stuebner <heiko.stuebner@vrull.eu>
> >
> > We may want to runtime-optimize some core functions (str*, mem*),
> > but not have this leak into libstub and cause build issues.
> > Instead libstub, for the short while it's running, should just use
> > the generic implementation.
> >
> > So, to be able to determine whether functions, that are used both in
> > libstub and the main kernel, are getting compiled as part of libstub or
> > not, add a compile-flag we can check via #ifdef.
> >
> > Reviewed-by: Conor Dooley <conor.dooley@microchip.com>
> > Signed-off-by: Heiko Stuebner <heiko.stuebner@vrull.eu>

I think it would be better to update arch/riscv/kernel/image-vars.h so
that only these generic implementations are exposed to the stub in the
first place.

> > ---
> > drivers/firmware/efi/libstub/Makefile | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/firmware/efi/libstub/Makefile b/drivers/firmware/efi/libstub/Makefile
> > index ef5045a53ce0..777d1ab059e3 100644
> > --- a/drivers/firmware/efi/libstub/Makefile
> > +++ b/drivers/firmware/efi/libstub/Makefile
> > @@ -25,7 +25,7 @@ cflags-$(CONFIG_ARM) := $(subst $(CC_FLAGS_FTRACE),,$(KBUILD_CFLAGS)) \
> > -fno-builtin -fpic \
> > $(call cc-option,-mno-single-pic-base)
> > cflags-$(CONFIG_RISCV) := $(subst $(CC_FLAGS_FTRACE),,$(KBUILD_CFLAGS)) \
> > - -fpic
> > + -fpic -DRISCV_EFISTUB
> > cflags-$(CONFIG_LOONGARCH) := $(subst $(CC_FLAGS_FTRACE),,$(KBUILD_CFLAGS)) \
> > -fpie
> >
> > --
> > 2.35.1
> >
>
> Reviewed-by: Andrew Jones <ajones@ventanamicro.com>