[PATCH] arm64/efi: efistub: jump to 'stext' directly, not through the header
Mark Rutland
mark.rutland at arm.com
Tue Jul 15 04:31:38 PDT 2014
> >> diff --git a/arch/arm64/kernel/efi-entry.S b/arch/arm64/kernel/efi-entry.S
> >> index 619b1dd7bcde..6ef541731d9e 100644
> >> --- a/arch/arm64/kernel/efi-entry.S
> >> +++ b/arch/arm64/kernel/efi-entry.S
> >> @@ -61,7 +61,7 @@ ENTRY(efi_stub_entry)
> >> */
> >> mov x20, x0 // DTB address
> >> ldr x0, [sp, #16] // relocated _text address
> >> - mov x21, x0
> >> + add x21, x0, #:lo12:stext_offset
> >
> > I think we can drop the :lo12: here, which will allow us to have a
> > warning if stext_offset is unexpectedly large (I believe this will
> > currently silently mask bits were that to happen?).
> >
>
> There is no alternative lo12 relocation that errors out when the value
> does not fit, so it would have to use a literal instead.
Ah, that's a shame. What happens when the value doesn't fit if the
linker / assembler don't error out?
That sounds like a toolchain bug if they're silently doing the wrong
thing.
Cheers,
Mark.
More information about the linux-arm-kernel
mailing list