[PATCH] x86-64: correct CODE_5 relocs

H.J. Lu hjl.tools@gmail.com
Tue Dec 17 08:44:36 GMT 2024


On Tue, Dec 17, 2024 at 4:03 PM Jan Beulich <jbeulich@suse.com> wrote:
>
> On 16.12.2024 22:29, H.J. Lu wrote:
> > On Mon, Dec 16, 2024 at 4:49 PM Jan Beulich <jbeulich@suse.com> wrote:
> >>
> >> Two of them had their numbers swapped; luckily they aren't really in use
> >> just yet. Correct indentation as well while at it.
> >>
> >> --- a/include/elf/x86-64.h
> >> +++ b/include/elf/x86-64.h
> >> @@ -96,18 +96,18 @@ START_RELOC_NUMBERS (elf_x86_64_reloc_ty
> >>         instruction starts at 5 bytes before the relocation offset,
> >>         relaxable.  */
> >>       RELOC_NUMBER (R_X86_64_CODE_5_GOTPCRELX, 46)
> >> +     /* PC relative offset to IE GOT entry if the instruction starts at
> >> +        5 bytes before the relocation offset.  */
> >> +     RELOC_NUMBER (R_X86_64_CODE_5_GOTTPOFF, 47)
> >>       /* 32 bit signed pc relative offset to TLS descriptor in the GOT if
> >>         instruction starts at 5 bytes before the relocation offset.  */
> >> -     RELOC_NUMBER (R_X86_64_CODE_5_GOTPC32_TLSDESC, 47)
> >> -    /* PC relative offset to IE GOT entry if the instruction starts at
> >> -       5 bytes before the relocation offset.  */
> >> -     RELOC_NUMBER (R_X86_64_CODE_5_GOTTPOFF, 48)
> >> +     RELOC_NUMBER (R_X86_64_CODE_5_GOTPC32_TLSDESC, 48)
> >>       /* Load from 32 bit signed pc relative offset to GOT entry if the
> >>         instruction starts at 6 bytes before the relocation offset,
> >>         relaxable.  */
> >>       RELOC_NUMBER (R_X86_64_CODE_6_GOTPCRELX, 49)
> >> -    /* PC relative offset to IE GOT entry if the instruction starts at
> >> -       6 bytes before the relocation offset.  */
> >> +     /* PC relative offset to IE GOT entry if the instruction starts at
> >> +        6 bytes before the relocation offset.  */
> >>       RELOC_NUMBER (R_X86_64_CODE_6_GOTTPOFF, 50)
> >>       /* 32 bit signed pc relative offset to TLS descriptor in the GOT if
> >>         instruction starts at 6 bytes before the relocation offset.  */
> >
> > Should it be backported to release branches?
>
> Don't know. The only place they can be used in right now is in .reloc, aiui.
> Not sure how many people even know of .reloc.
>

I think it should be backported.  Otherwise, master and release
branches aren't consistent.

Thanks.

-- 
H.J.


More information about the Binutils mailing list