lkml.org 
[lkml]   [2020]   [May]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
From
SubjectRe: [patch V9 21/39] x86/irq: Convey vector as argument and not in ptregs
Date
Thomas Gleixner <tglx@linutronix.de> writes:
> + .align 8
> +SYM_CODE_START(irq_entries_start)
> + vector=FIRST_EXTERNAL_VECTOR
> + pos = .
> + .rept (FIRST_SYSTEM_VECTOR - FIRST_EXTERNAL_VECTOR)
> + UNWIND_HINT_IRET_REGS
> + .byte 0x6a, vector
> + jmp common_interrupt
> + .nops (pos + 8) - .

Boris pointed out that .nops requires binutils >=2.31 ... Sigh!

The below delta patch works for the purpose.

Thanks,

tglx

--- a/arch/x86/include/asm/idtentry.h
+++ b/arch/x86/include/asm/idtentry.h
@@ -475,7 +475,9 @@ SYM_CODE_START(irq_entries_start)
UNWIND_HINT_IRET_REGS
.byte 0x6a, vector
jmp asm_common_interrupt
- .nops (pos + 8) - .
+ nop
+ /* Ensure that the above is 8 bytes max */
+ . = pos + 8
pos=pos+8
vector=vector+1
.endr
@@ -490,7 +492,9 @@ SYM_CODE_START(spurious_entries_start)
UNWIND_HINT_IRET_REGS
.byte 0x6a, vector
jmp asm_spurious_interrupt
- .nops (pos + 8) - .
+ nop
+ /* Ensure that the above is 8 bytes max */
+ . = pos + 8
pos=pos+8
vector=vector+1
.endr

\
 
 \ /
  Last update: 2020-05-22 21:35    [W:0.583 / U:0.920 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site