Thread (3 messages) flat view 3 messages, 3 authors, 2016-09-20

Re: powerpc: Don't change the section in _GLOBAL()

From: Michael Ellerman <hidden>
Date: 2016-09-20 13:07:25

On Thu, 2016-15-09 at 00:40:20 UTC, Michael Ellerman wrote:
Currently the _GLOBAL() macro unilaterally sets the assembler section to
".text" at the start of the macro. This is rude as the caller may be
using a different section.

So let the caller decide which section to emit the code into. On big
endian we do need to switch to the ".opd" section to emit the OPD, but
do that with pushsection/popsection, thereby leaving the original
section intact.

The only place I could find where this requires changes to the code is
in misc_32.S, where we need to switch back to ".text" after
flush_icache_range() which is in ".kprobes.text".

I verified that the order of all entries in System.map is unchanged
after this patch. The actual addresses shift around slightly so you
can't just diff the System.map.

Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Reviewed-by: Nicholas Piggin <npiggin@gmail.com>
Applied to powerpc next.

https://git.kernel.org/powerpc/c/bea2dccccfd47ef3f8612f1265

cheers
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help