arm64: insn: decouple patching from insn code
authorMark Rutland <mark.rutland@arm.com>
Wed, 9 Jun 2021 10:23:00 +0000 (11:23 +0100)
committerWill Deacon <will@kernel.org>
Fri, 11 Jun 2021 10:19:27 +0000 (11:19 +0100)
commit78b92c7337e10519312e8aab64d7a1651206bd61
treef8ab051cfc991c14899398c2c5e72d6fccc60aaa
parent71766b81de8204a0fb56de3ad1972516bac99f5b
arm64: insn: decouple patching from insn code

Currently, <asm/insn.h> includes <asm/patching.h>. We intend that
<asm/insn.h> will be usable from userspace, so it doesn't make sense to
include headers for kernel-only features such as the patching routines,
and we'd intended to restrict <asm/insn.h> to instruction encoding
details.

Let's decouple the patching code from <asm/insn.h>, and explicitly
include <asm/patching.h> where it is needed. Since <asm/patching.h>
isn't included from assembly, we can drop the __ASSEMBLY__ guards.

At the same time, sort the kprobes includes so that it's easier to see
what is and isn't incldued.

Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Will Deacon <will@kernel.org>
Link: https://lore.kernel.org/r/20210609102301.17332-2-mark.rutland@arm.com
Signed-off-by: Will Deacon <will@kernel.org>
arch/arm64/include/asm/insn.h
arch/arm64/include/asm/patching.h
arch/arm64/kernel/ftrace.c
arch/arm64/kernel/jump_label.c
arch/arm64/kernel/kgdb.c
arch/arm64/kernel/patching.c
arch/arm64/kernel/probes/kprobes.c
arch/arm64/kernel/traps.c