x86/traps: Use current_top_of_stack() helper in traps.c
authorUros Bizjak <ubizjak@gmail.com>
Mon, 4 Dec 2023 21:02:30 +0000 (22:02 +0100)
committerIngo Molnar <mingo@kernel.org>
Mon, 11 Dec 2023 10:47:15 +0000 (11:47 +0100)
Use current_top_of_stack() helper in sync_regs() and vc_switch_off_ist()
instead of open-coding the reading of  the top_of_stack percpu variable
explicitly.

Signed-off-by: Uros Bizjak <ubizjak@gmail.com>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Link: https://lore.kernel.org/r/20231204210320.114429-2-ubizjak@gmail.com
arch/x86/kernel/traps.c

index c876f1d36a81a7518214c3215ae08830d47e55f5..78b1d1a6ed2cc5488cad09f00da8b57d96e7f30f 100644 (file)
@@ -772,7 +772,7 @@ DEFINE_IDTENTRY_RAW(exc_int3)
  */
 asmlinkage __visible noinstr struct pt_regs *sync_regs(struct pt_regs *eregs)
 {
-       struct pt_regs *regs = (struct pt_regs *)this_cpu_read(pcpu_hot.top_of_stack) - 1;
+       struct pt_regs *regs = (struct pt_regs *)current_top_of_stack() - 1;
        if (regs != eregs)
                *regs = *eregs;
        return regs;
@@ -790,7 +790,7 @@ asmlinkage __visible noinstr struct pt_regs *vc_switch_off_ist(struct pt_regs *r
         * trust it and switch to the current kernel stack
         */
        if (ip_within_syscall_gap(regs)) {
-               sp = this_cpu_read(pcpu_hot.top_of_stack);
+               sp = current_top_of_stack();
                goto sync;
        }