Kexec Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Chris Clayton <chris2553@googlemail.com>
To: kexec@lists.infradead.org
Subject: (Possible) fix for "Unhandled rela relocation: R_X86_64_PLT32" error
Date: Wed, 25 Jul 2018 09:46:10 +0100	[thread overview]
Message-ID: <e590dc81-7df7-746d-98f2-710f85e03467@googlemail.com> (raw)

Hi.

I haven't rebooted my laptop with kexec for quite some time, but when I tried to this morning I got the error you will
see in $SUBJECT.  The error occurs with both kexec-tools-2.0.17 or -2.0.16 run on either 4.18.0-rc6+ (built from a git
pull this morning) or 4.14.57 kernels.

I searched for "R_X86_64_PLT32" and found that there was a change to the kernel that may be related -
b21ebf2fb4cde1618915a97cc773e287ff49173e x86: Treat R_X86_64_PLT32 as R_X86_64_PC32. So I replicated the change that
patch made to arch/x86/kernel/machine_kexec_64.c in kexec/arch/x86_64/kexec-elf-rel-x86_64.c and kexec now reboots into
the new kernel.

I don't know enough about relocations and the like to know whether my 'fix' is correct and the best way to go about it,
but I've included it below for your consideration.

Signed-off-by: Chris Clayton <chris2553@googlemail.com>

--- kexec-tools-2.0.17/kexec/arch/x86_64/kexec-elf-rel-x86_64.c.orig	2018-07-25 08:48:24.152054030 +0100
+++ kexec-tools-2.0.17/kexec/arch/x86_64/kexec-elf-rel-x86_64.c	2018-07-25 08:49:16.860055330 +0100
@@ -79,6 +79,7 @@ void machine_apply_elf_rel(struct mem_eh
 			goto overflow;
 		break;
 	case R_X86_64_PC32:
+	case R_X86_64_PLT32:
 		*(uint32_t *)location = value - address;
 		break;
 	default:

_______________________________________________
kexec mailing list
kexec@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/kexec

             reply	other threads:[~2018-07-25  8:46 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-07-25  8:46 Chris Clayton [this message]
2018-08-20  8:37 ` (Possible) fix for "Unhandled rela relocation: R_X86_64_PLT32" error Baoquan He
2018-08-20 11:00   ` kexec: " Chris Clayton
2018-08-20 12:17     ` Baoquan He
2018-08-20 12:21       ` Baoquan He
2018-08-20 15:12         ` Chris Clayton
2018-08-20 22:38           ` Baoquan He
2018-08-21 11:21           ` Bhupesh Sharma
2018-08-24  7:56             ` Simon Horman
2018-08-24 14:57               ` Baoquan He
2018-08-24 15:08               ` Bhupesh Sharma

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=e590dc81-7df7-746d-98f2-710f85e03467@googlemail.com \
    --to=chris2553@googlemail.com \
    --cc=kexec@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox