[GIT PULL] arm64: Support dynamic preemption v3

From: Frederic Weisbecker
Date: Mon Dec 20 2021 - 09:01:53 EST


Hi,

I haven't seen much comments on the static key based version from Mark
so I don't know which direction we'll eventually take. I still hope we
can focus on a unified static call based implementation, considering
there are other users waiting on arm64 static calls.

So here is a rebase against the latest tip:sched/core and arm64 static
call proposal.

git://git.kernel.org/pub/scm/linux/kernel/git/frederic/linux-dynticks.git
preempt/arm-v4

HEAD: 6fc1c7e3d83c4e06b019b041894d9bb25f37ac6c

Thanks,
Frederic
---

Frederic Weisbecker (3):
sched/preempt: Prepare for supporting !CONFIG_GENERIC_ENTRY dynamic preemption
arm64: Implement IRQ exit preemption static call for dynamic preemption
arm64: Implement HAVE_PREEMPT_DYNAMIC

Ard Biesheuvel (2):
static_call: Use non-function types to refer to the trampolines
arm64: implement support for static call trampolines


arch/Kconfig | 1 -
arch/arm64/Kconfig | 3 ++
arch/arm64/include/asm/preempt.h | 23 ++++++++++-
arch/arm64/include/asm/static_call.h | 40 +++++++++++++++++++
arch/arm64/kernel/entry-common.c | 15 +++++--
arch/arm64/kernel/patching.c | 77 ++++++++++++++++++++++++++++++++++--
arch/arm64/kernel/vmlinux.lds.S | 1 +
include/linux/entry-common.h | 3 +-
include/linux/static_call.h | 4 +-
include/linux/static_call_types.h | 11 ++++--
kernel/sched/core.c | 6 ++-
11 files changed, 168 insertions(+), 16 deletions(-)