xen: make sure iret faults are trapped

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
This commit is contained in:
Jeremy Fitzhardinge
2008-03-17 16:37:12 -07:00
committed by Ingo Molnar
parent 9666e9d44b
commit 90e9f53662
2 changed files with 6 additions and 2 deletions

View File

@@ -409,7 +409,7 @@ restore_nocheck_notrace:
irq_return: irq_return:
INTERRUPT_RETURN INTERRUPT_RETURN
.section .fixup,"ax" .section .fixup,"ax"
iret_exc: ENTRY(iret_exc)
pushl $0 # no error code pushl $0 # no error code
pushl $do_iret_error pushl $do_iret_error
jmp error_code jmp error_code

View File

@@ -184,8 +184,12 @@ iret_restore_end:
region is OK. */ region is OK. */
je xen_hypervisor_callback je xen_hypervisor_callback
iret 1: iret
xen_iret_end_crit: xen_iret_end_crit:
.section __ex_table,"a"
.align 4
.long 1b,iret_exc
.previous
hyper_iret: hyper_iret:
/* put this out of line since its very rarely used */ /* put this out of line since its very rarely used */