[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date: Tue, 12 Dec 2017 22:39:26 +1100 (AEDT)
From: Michael Ellerman <patch-notifications@...erman.id.au>
To: Kamalesh Babulal <kamalesh@...ux.vnet.ibm.com>
Cc: Aravinda Prasad <aravinda@...ux.vnet.ibm.com>,
Jessica Yu <jeyu@...nel.org>, linux-kernel@...r.kernel.org,
Kamalesh Babulal <kamalesh@...ux.vnet.ibm.com>,
Torsten Duwe <duwe@....de>,
Josh Poimboeuf <jpoimboe@...hat.com>,
live-patching@...r.kernel.org,
"Naveen N . Rao" <naveen.n.rao@...ux.vnet.ibm.com>,
linuxppc-dev@...ts.ozlabs.org
Subject: Re: [v4, 1/3] kernel/modules: Add REL24 relocation support of livepatch symbols
On Tue, 2017-11-14 at 09:29:08 UTC, Kamalesh Babulal wrote:
> Livepatch re-uses module loader function apply_relocate_add() to write
> relocations, instead of managing them by arch-dependent
> klp_write_module_reloc() function.
>
> apply_relocate_add() doesn't understand livepatch symbols (marked with
> SHN_LIVEPATCH symbol section index) and assumes them to be local symbols
> by default for R_PPC64_REL24 relocation type. It fails with an error,
> when trying to calculate offset with local_entry_offset():
>
> module_64: kpatch_meminfo: REL24 -1152921504897399800 out of range!
>
> Whereas livepatch symbols are essentially SHN_UNDEF, should be
> called via stub used for global calls. This issue can be fixed by
> teaching apply_relocate_add() to handle both SHN_UNDEF/SHN_LIVEPATCH
> symbols via the same stub. This patch extends SHN_UNDEF code to handle
> livepatch symbols too.
>
> Signed-off-by: Kamalesh Babulal <kamalesh@...ux.vnet.ibm.com>
> CC: Balbir Singh <bsingharora@...il.com>
> Cc: Naveen N. Rao <naveen.n.rao@...ux.vnet.ibm.com>
> Cc: Josh Poimboeuf <jpoimboe@...hat.com>
> Cc: Jessica Yu <jeyu@...nel.org>
> Cc: Ananth N Mavinakayanahalli <ananth@...ux.vnet.ibm.com>
> Cc: Aravinda Prasad <aravinda@...ux.vnet.ibm.com>
> Cc: Torsten Duwe <duwe@....de>
Applied to powerpc next, thanks.
https://git.kernel.org/powerpc/c/a443bf6e8a7674b86221f4922cae82
cheers
Powered by blists - more mailing lists