On 20/08/2018 13:21, Baoquan He wrote: > Hi Chris, > > On 08/20/18 at 08:17pm, Baoquan He wrote: >> In response to a change in binutils, commit b21ebf2fb4c >> (x86: Treat R_X86_64_PLT32 as R_X86_64_PC32) was applied to >> the linux kernel during the 4.16 development cycle and has >> since been backported to earlier stable kernel series. The >> change results in the failure message in $SUBJECT when >> rebooting via kexec. >> >> Fix this by replicating the change in kexec. >> OK. >> Signed-off-by: Chris Clayton <chris2553@xxxxxxxxxxxxxx> > > I adjusted the patch log a little bit, you have tested it on upstream > kernel, right? > At the time of my original message (25 July 2018), 4.18.0-rc6+ was the latest upstream. I tested my change on that and on the latest stable 4.14 series kernel, which was 4.14.57. I've just tested it with 4.18.3 and 4.14.65 and it works fine. I don't have a 4.19 development kernel installed at the moment - I'm busy with other stuff. Chris > Thanks > Baoquan > >> --- >> kexec/arch/x86_64/kexec-elf-rel-x86_64.c | 1 + >> 1 file changed, 1 insertion(+) >> >> diff --git a/kexec/arch/x86_64/kexec-elf-rel-x86_64.c b/kexec/arch/x86_64/kexec-elf-rel-x86_64.c >> index 7fdde73..db85b44 100644 >> --- a/kexec/arch/x86_64/kexec-elf-rel-x86_64.c >> +++ b/kexec/arch/x86_64/kexec-elf-rel-x86_64.c >> @@ -79,6 +79,7 @@ void machine_apply_elf_rel(struct mem_ehdr *UNUSED(ehdr), >> goto overflow; >> break; >> case R_X86_64_PC32: >> + case R_X86_64_PLT32: >> *(uint32_t *)location = value - address; >> break; >> default: >> -- >> 2.13.6 >> >> >> _______________________________________________ >> kexec mailing list >> kexec@xxxxxxxxxxxxxxxxxxx >> http://lists.infradead.org/mailman/listinfo/kexec _______________________________________________ kexec mailing list kexec@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/kexec