2012-09-21 16:45:08 +02:00
|
|
|
--- a/xen/arch/x86/x86_64/entry.S
|
|
|
|
+++ b/xen/arch/x86/x86_64/entry.S
|
2012-09-17 17:49:23 +02:00
|
|
|
@@ -427,22 +427,35 @@ UNLIKELY_END(bounce_failsafe)
|
2011-03-21 17:47:37 +01:00
|
|
|
jz domain_crash_synchronous
|
2007-05-04 00:32:49 +02:00
|
|
|
movq %rax,UREGS_rip+8(%rsp)
|
2007-02-11 11:48:10 +01:00
|
|
|
ret
|
2011-03-21 17:47:37 +01:00
|
|
|
- _ASM_EXTABLE(.Lft2, domain_crash_synchronous)
|
|
|
|
- _ASM_EXTABLE(.Lft3, domain_crash_synchronous)
|
|
|
|
- _ASM_EXTABLE(.Lft4, domain_crash_synchronous)
|
|
|
|
- _ASM_EXTABLE(.Lft5, domain_crash_synchronous)
|
|
|
|
- _ASM_EXTABLE(.Lft6, domain_crash_synchronous)
|
|
|
|
- _ASM_EXTABLE(.Lft7, domain_crash_synchronous)
|
|
|
|
- _ASM_EXTABLE(.Lft8, domain_crash_synchronous)
|
|
|
|
- _ASM_EXTABLE(.Lft9, domain_crash_synchronous)
|
|
|
|
- _ASM_EXTABLE(.Lft10, domain_crash_synchronous)
|
|
|
|
- _ASM_EXTABLE(.Lft11, domain_crash_synchronous)
|
|
|
|
- _ASM_EXTABLE(.Lft12, domain_crash_synchronous)
|
|
|
|
- _ASM_EXTABLE(.Lft13, domain_crash_synchronous)
|
|
|
|
+ _ASM_EXTABLE(.Lft2, domain_crash_page_fault_32)
|
|
|
|
+ _ASM_EXTABLE(.Lft3, domain_crash_page_fault_24)
|
|
|
|
+ _ASM_EXTABLE(.Lft4, domain_crash_page_fault_8)
|
|
|
|
+ _ASM_EXTABLE(.Lft5, domain_crash_page_fault_16)
|
|
|
|
+ _ASM_EXTABLE(.Lft6, domain_crash_page_fault)
|
|
|
|
+ _ASM_EXTABLE(.Lft7, domain_crash_page_fault)
|
|
|
|
+ _ASM_EXTABLE(.Lft8, domain_crash_page_fault_24)
|
|
|
|
+ _ASM_EXTABLE(.Lft9, domain_crash_page_fault_16)
|
|
|
|
+ _ASM_EXTABLE(.Lft10, domain_crash_page_fault_8)
|
|
|
|
+ _ASM_EXTABLE(.Lft11, domain_crash_page_fault)
|
|
|
|
+ _ASM_EXTABLE(.Lft12, domain_crash_page_fault_8)
|
|
|
|
+ _ASM_EXTABLE(.Lft13, domain_crash_page_fault)
|
2007-02-11 11:48:10 +01:00
|
|
|
|
2012-09-21 16:45:08 +02:00
|
|
|
+.section .rodata, "a", @progbits
|
2007-02-11 11:48:10 +01:00
|
|
|
domain_crash_synchronous_string:
|
|
|
|
.asciz "domain_crash_sync called from entry.S\n"
|
|
|
|
+.previous
|
|
|
|
|
|
|
|
+domain_crash_page_fault_32:
|
|
|
|
+ addq $8,%rsi
|
|
|
|
+domain_crash_page_fault_24:
|
|
|
|
+ addq $8,%rsi
|
|
|
|
+domain_crash_page_fault_16:
|
|
|
|
+ addq $8,%rsi
|
|
|
|
+domain_crash_page_fault_8:
|
|
|
|
+ addq $8,%rsi
|
|
|
|
+domain_crash_page_fault:
|
|
|
|
+ movq %rsi,%rdi
|
|
|
|
+ call show_page_walk
|
2007-04-26 01:53:07 +02:00
|
|
|
ENTRY(domain_crash_synchronous)
|
2007-02-11 11:48:10 +01:00
|
|
|
# Get out of the guest-save area of the stack.
|
2011-03-21 17:47:37 +01:00
|
|
|
GET_CPUINFO_FIELD(CPUINFO_guest_cpu_user_regs,%rax)
|