lkml.org 
[lkml]   [2019]   [Feb]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: 答复: [PATCH ] x86: livepatch: Treat R_X86_64_PLT32 as R_X86_64_PC32
On Fri 2019-02-15 08:17:36, chenzefeng (A) wrote:
> HI, Jiri Kosina,
>
> On Fri, 15 Feb 2019, Jiri Kosina wrote:
> >On Fri, 15 Feb 2019, chenzefeng (A) wrote:
>
> >> On x86-64, for 32-bit PC-relacive branches, we can generate PLT32
> >> relocation, instead of PC32 relocation. and R_X86_64_PLT32 can be
> >> treated the same as R_X86_64_PC32 since linux kernel doesn't use PLT.
> >>
> >> In linux 4.4 commit b21ebf2fb4cd ("x86: Treat R_X86_64_PLT32 as
> >> R_X86_64_PC32") been fixed for the module loading, but not fixed for
> >> livepatch relocation, which will fail to load livepatch with the error
> >> message as follow: relocation failed for symbol <symbol name> at
> >> <symbol
> >> address>
> >>
> >> Signed-off-by: chenzefeng <chenzefeng2@huawei.com>
>
> >What kernel version is this patch based on? We've got rid of x86-specific module loading stub and offloaded all the relocation handling to generic kmod loader long time ago.

The livepatch-specific code has been removed in v4.7, see
the commit 425595a7fc2096ab46c ("livepatch: reuse module
loader code to write relocations").

> The patch is based on kernel version Linux 4.4.174.

The patch would make sense only for 4.4 stable kernel
and it looks fine for this purpose.

Please, send the patch to stable@vger.kernel.org if
Greg misses it in this thread.

Best Regards,
Petr

\
 
 \ /
  Last update: 2019-02-15 10:06    [W:1.202 / U:0.056 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site