All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 0/7] Implement inline static calls on PPC32 - v2
@ 2022-07-08 17:31 ` Christophe Leroy
  0 siblings, 0 replies; 24+ messages in thread
From: Christophe Leroy @ 2022-07-08 17:31 UTC (permalink / raw)
  To: Michael Ellerman, Nicholas Piggin, sv, agust, jpoimboe, peterz,
	jbaron, rostedt, ardb, tglx, mingo, bp, dave.hansen, hpa
  Cc: Christophe Leroy, linux-kernel, linuxppc-dev, x86, chenzhongjin

This series applies on top of the series v3 "objtool: Enable and
implement --mcount option on powerpc" [1] rebased on powerpc-next branch

A few modifications are done to core parts to enable powerpc
implementation:
- R_X86_64_PC32 is abstracted to R_REL32 so that it can then be
redefined as R_PPC_REL32.
- A call to static_call_init() is added to start_kernel() to avoid
every architecture to have to call it
- Trampoline address is provided to arch_static_call_transform() even
when setting a site to fallback on a call to the trampoline when the
target is too far.

[1] https://lore.kernel.org/lkml/70b6d08d-aced-7f4e-b958-a3c7ae1a9319@csgroup.eu/T/#rb3a073c54aba563a135fba891e0c34c46e47beef

Christophe Leroy (7):
  powerpc: Add missing asm/asm.h for objtool
  objtool/powerpc: Activate objtool on PPC32
  objtool: Add architecture specific R_REL32 macro
  objtool/powerpc: Add necessary support for inline static calls
  init: Call static_call_init() from start_kernel()
  static_call_inline: Provide trampoline address when updating sites
  powerpc/static_call: Implement inline static calls

 arch/powerpc/Kconfig                          |  3 +-
 arch/powerpc/include/asm/asm.h                |  7 +++
 arch/powerpc/include/asm/static_call.h        |  2 +
 arch/powerpc/kernel/cpu_setup_6xx.S           | 26 ++++++---
 arch/powerpc/kernel/cpu_setup_fsl_booke.S     |  8 ++-
 arch/powerpc/kernel/entry_32.S                |  8 ++-
 arch/powerpc/kernel/head_40x.S                |  5 +-
 arch/powerpc/kernel/head_8xx.S                |  5 +-
 arch/powerpc/kernel/head_book3s_32.S          | 29 +++++++---
 arch/powerpc/kernel/head_fsl_booke.S          |  5 +-
 arch/powerpc/kernel/static_call.c             | 56 ++++++++++++++-----
 arch/powerpc/kernel/swsusp_32.S               |  5 +-
 arch/powerpc/kvm/fpu.S                        | 17 ++++--
 arch/powerpc/platforms/52xx/lite5200_sleep.S  | 15 +++--
 arch/x86/kernel/static_call.c                 |  2 +-
 init/main.c                                   |  1 +
 kernel/static_call_inline.c                   |  2 +-
 tools/objtool/arch/powerpc/decode.c           | 16 ++++--
 tools/objtool/arch/powerpc/include/arch/elf.h |  1 +
 tools/objtool/arch/x86/include/arch/elf.h     |  1 +
 tools/objtool/check.c                         | 10 ++--
 tools/objtool/orc_gen.c                       |  2 +-
 22 files changed, 162 insertions(+), 64 deletions(-)
 create mode 100644 arch/powerpc/include/asm/asm.h

-- 
2.36.1


^ permalink raw reply	[flat|nested] 24+ messages in thread

end of thread, other threads:[~2022-09-08  6:12 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-07-08 17:31 [PATCH v2 0/7] Implement inline static calls on PPC32 - v2 Christophe Leroy
2022-07-08 17:31 ` Christophe Leroy
2022-07-08 17:31 ` [PATCH v2 1/7] powerpc: Add missing asm/asm.h for objtool Christophe Leroy
2022-07-08 17:31   ` Christophe Leroy
2022-07-08 17:31 ` [PATCH v2 2/7] objtool/powerpc: Activate objtool on PPC32 Christophe Leroy
2022-07-08 17:31   ` Christophe Leroy
2022-07-08 17:31 ` [PATCH v2 3/7] objtool: Add architecture specific R_REL32 macro Christophe Leroy
2022-07-08 17:31   ` Christophe Leroy
2022-07-08 17:31 ` [PATCH v2 4/7] objtool/powerpc: Add necessary support for inline static calls Christophe Leroy
2022-07-08 17:31   ` Christophe Leroy
2022-07-08 17:31 ` [PATCH v2 5/7] init: Call static_call_init() from start_kernel() Christophe Leroy
2022-07-08 17:31   ` Christophe Leroy
2022-07-08 17:31 ` [PATCH v2 6/7] static_call_inline: Provide trampoline address when updating sites Christophe Leroy
2022-07-08 17:31   ` Christophe Leroy
2022-07-08 17:31 ` [PATCH v2 7/7] powerpc/static_call: Implement inline static calls Christophe Leroy
2022-07-08 17:31   ` Christophe Leroy
2022-07-09  6:52 ` [PATCH v2 0/7] Implement inline static calls on PPC32 - v2 Ard Biesheuvel
2022-07-09  6:52   ` Ard Biesheuvel
2022-09-01 16:46   ` Christophe Leroy
2022-09-01 16:46     ` Christophe Leroy
2022-09-08  0:13     ` Benjamin Gray
2022-09-08  0:13       ` Benjamin Gray
2022-09-08  6:11       ` Christophe Leroy
2022-09-08  6:11         ` Christophe Leroy

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.