[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20180218123116.21334-5-linux@dominikbrodowski.net>
Date: Sun, 18 Feb 2018 13:31:15 +0100
From: Dominik Brodowski <linux@...inikbrodowski.net>
To: linux-kernel@...r.kernel.org, mingo@...nel.org, x86@...nel.org,
brgerst@...il.com, luto@...nel.org, jpoimboe@...hat.com
Cc: torvalds@...ux-foundation.org, ak@...ux.intel.com,
tglx@...utronix.de, dan.j.williams@...el.com
Subject: [RFC PATCH v2 4/5] x86/entry/64: remove interrupt macro
It is now trivial to call the interrupt helper function and then the
actual worker. Therefore, remove the interrupt macro.
Suggested-by: Linus Torvalds <torvalds@...ux-foundation.org>
Signed-off-by: Dominik Brodowski <linux@...inikbrodowski.net>
---
arch/x86/entry/entry_64.S | 18 ++++++------------
1 file changed, 6 insertions(+), 12 deletions(-)
diff --git a/arch/x86/entry/entry_64.S b/arch/x86/entry/entry_64.S
index 266bfcba3bb5..0ac2b4865d58 100644
--- a/arch/x86/entry/entry_64.S
+++ b/arch/x86/entry/entry_64.S
@@ -609,16 +609,6 @@ ENTRY(interrupt_helper)
ret
END(interrupt_helper)
-/* 0(%rsp): ~(interrupt number) */
- .macro interrupt func
- cld
-
- call interrupt_helper
-
- UNWIND_HINT_REGS indirect=1
- call \func /* rdi points to pt_regs */
- .endm
-
/*
* The interrupt stubs push (~vector+0x80) onto the stack and
* then jump to common_interrupt.
@@ -627,7 +617,9 @@ END(interrupt_helper)
common_interrupt:
ASM_CLAC
addq $-0x80, (%rsp) /* Adjust vector to [-256, -1] range */
- interrupt do_IRQ
+ call interrupt_helper
+ UNWIND_HINT_REGS indirect=1
+ call do_IRQ /* rdi points to pt_regs */
/* 0(%rsp): old RSP */
ret_from_intr:
DISABLE_INTERRUPTS(CLBR_ANY)
@@ -823,7 +815,9 @@ ENTRY(\sym)
ASM_CLAC
pushq $~(\num)
.Lcommon_\sym:
- interrupt \do_sym
+ call interrupt_helper
+ UNWIND_HINT_REGS indirect=1
+ call \do_sym /* rdi points to pt_regs */
jmp ret_from_intr
END(\sym)
.endm
--
2.16.1
Powered by blists - more mailing lists