Просмотр исходного кода

powerpc/64s: Use the HV handler for external IRQ replay in HV mode on POWER9

POWER9 host external interrupts use the h_virt_irq_common handler, so
use that to replay them rather than using the hardware_interrupt_common
handler. Both call do_IRQ, but using the correct handler reduces
i-cache footprint.

Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Nicholas Piggin 8 лет назад
Родитель
Сommit
e6c1203d5c
1 измененных файлов с 4 добавлено и 0 удалено
  1. 4 0
      arch/powerpc/kernel/exceptions-64s.S

+ 4 - 0
arch/powerpc/kernel/exceptions-64s.S

@@ -1674,7 +1674,11 @@ _GLOBAL(__replay_interrupt)
 	cmpwi	r3,0x900
 	beq	decrementer_common
 	cmpwi	r3,0x500
+BEGIN_FTR_SECTION
+	beq	h_virt_irq_common
+FTR_SECTION_ELSE
 	beq	hardware_interrupt_common
+ALT_FTR_SECTION_END_IFSET(CPU_FTR_HVMODE | CPU_FTR_ARCH_300)
 BEGIN_FTR_SECTION
 	cmpwi	r3,0xa00
 	beq	h_doorbell_common_msgclr