@@ -69,9 +69,11 @@ static noinstr irqentry_state_t enter_from_kernel_mode(struct pt_regs *regs)
* This is intended to match the logic in irqentry_exit(), handling the kernel
* mode transitions only, and with preemption handled elsewhere.
*/
-static __always_inline void __exit_to_kernel_mode(struct pt_regs *regs,
- irqentry_state_t state)
+static void noinstr exit_to_kernel_mode(struct pt_regs *regs,
+ irqentry_state_t state)
{
+ mte_check_tfsr_exit();
+
lockdep_assert_irqs_disabled();
if (!regs_irqs_disabled(regs)) {
@@ -90,13 +92,6 @@ static __always_inline void __exit_to_kernel_mode(struct pt_regs *regs,
}
}
-static void noinstr exit_to_kernel_mode(struct pt_regs *regs,
- irqentry_state_t state)
-{
- mte_check_tfsr_exit();
- __exit_to_kernel_mode(regs, state);
-}
-
/*
* Handle IRQ/context state management when entering from user mode.
* Before this function is called it is not safe to call regular kernel code,
__exit_to_kernel_mode() is only called by exit_to_kernel_mode(), remove it. No functional changes. Signed-off-by: Jinjie Ruan <ruanjinjie@huawei.com> --- arch/arm64/kernel/entry-common.c | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-)