90 lines
4.4 KiB
Diff
90 lines
4.4 KiB
Diff
Index: 2007-05-14/xen/arch/x86/x86_32/entry.S
|
|
===================================================================
|
|
--- 2007-05-14.orig/xen/arch/x86/x86_32/entry.S 2007-05-14 14:40:35.000000000 +0200
|
|
+++ 2007-05-14/xen/arch/x86/x86_32/entry.S 2007-04-27 09:57:47.000000000 +0200
|
|
@@ -387,21 +387,33 @@ ring1: /* obtain ss/esp from oldss/olde
|
|
movl %eax,UREGS_eip+4(%esp)
|
|
ret
|
|
.section __ex_table,"a"
|
|
- .long .Lft6,domain_crash_synchronous , .Lft7,domain_crash_synchronous
|
|
- .long .Lft8,domain_crash_synchronous , .Lft9,domain_crash_synchronous
|
|
- .long .Lft10,domain_crash_synchronous , .Lft11,domain_crash_synchronous
|
|
- .long .Lft12,domain_crash_synchronous , .Lft13,domain_crash_synchronous
|
|
- .long .Lft14,domain_crash_synchronous , .Lft15,domain_crash_synchronous
|
|
- .long .Lft16,domain_crash_synchronous , .Lft17,domain_crash_synchronous
|
|
- .long .Lft18,domain_crash_synchronous , .Lft19,domain_crash_synchronous
|
|
- .long .Lft20,domain_crash_synchronous , .Lft21,domain_crash_synchronous
|
|
- .long .Lft22,domain_crash_synchronous , .Lft23,domain_crash_synchronous
|
|
- .long .Lft24,domain_crash_synchronous , .Lft25,domain_crash_synchronous
|
|
+ .long .Lft6,domain_crash_synchronous , .Lft7,domain_crash_page_fault
|
|
+ .long .Lft8,domain_crash_page_fault_4 , .Lft9,domain_crash_page_fault_8
|
|
+ .long .Lft10,domain_crash_page_fault_12, .Lft11,domain_crash_page_fault
|
|
+ .long .Lft12,domain_crash_page_fault_4 , .Lft13,domain_crash_synchronous
|
|
+ .long .Lft14,domain_crash_page_fault , .Lft15,domain_crash_page_fault_4
|
|
+ .long .Lft16,domain_crash_page_fault_8 , .Lft17,domain_crash_page_fault
|
|
+ .long .Lft18,domain_crash_page_fault , .Lft19,domain_crash_page_fault_4
|
|
+ .long .Lft20,domain_crash_page_fault_8 , .Lft21,domain_crash_page_fault_12
|
|
+ .long .Lft22,domain_crash_page_fault , .Lft23,domain_crash_page_fault_4
|
|
+ .long .Lft24,domain_crash_page_fault_8 , .Lft25,domain_crash_page_fault_12
|
|
.previous
|
|
|
|
+.section .rodata,"a"
|
|
domain_crash_synchronous_string:
|
|
.asciz "domain_crash_sync called from entry.S (%lx)\n"
|
|
+.previous
|
|
|
|
+domain_crash_page_fault_12:
|
|
+ addl $4,%esi
|
|
+domain_crash_page_fault_8:
|
|
+ addl $4,%esi
|
|
+domain_crash_page_fault_4:
|
|
+ addl $4,%esi
|
|
+domain_crash_page_fault:
|
|
+ pushl %esi
|
|
+ call show_page_walk
|
|
+ addl $4,%esp
|
|
domain_crash_synchronous:
|
|
pushl $domain_crash_synchronous_string
|
|
call printk
|
|
Index: 2007-05-14/xen/arch/x86/x86_64/entry.S
|
|
===================================================================
|
|
--- 2007-05-14.orig/xen/arch/x86/x86_64/entry.S 2007-07-02 10:48:18.000000000 +0200
|
|
+++ 2007-05-14/xen/arch/x86/x86_64/entry.S 2007-07-02 11:57:21.000000000 +0200
|
|
@@ -338,17 +338,30 @@ create_bounce_frame:
|
|
movq %rax,UREGS_rip+8(%rsp)
|
|
ret
|
|
.section __ex_table,"a"
|
|
- .quad .Lft2,domain_crash_synchronous , .Lft3,domain_crash_synchronous
|
|
- .quad .Lft4,domain_crash_synchronous , .Lft5,domain_crash_synchronous
|
|
- .quad .Lft6,domain_crash_synchronous , .Lft7,domain_crash_synchronous
|
|
- .quad .Lft8,domain_crash_synchronous , .Lft9,domain_crash_synchronous
|
|
- .quad .Lft10,domain_crash_synchronous , .Lft11,domain_crash_synchronous
|
|
- .quad .Lft12,domain_crash_synchronous , .Lft13,domain_crash_synchronous
|
|
+ .quad .Lft2,domain_crash_page_fault_32, .Lft3,domain_crash_page_fault_24
|
|
+ .quad .Lft4,domain_crash_page_fault_8 , .Lft5,domain_crash_page_fault_16
|
|
+ .quad .Lft6,domain_crash_page_fault , .Lft7,domain_crash_page_fault
|
|
+ .quad .Lft8,domain_crash_page_fault_24, .Lft9,domain_crash_page_fault_16
|
|
+ .quad .Lft10,domain_crash_page_fault_8 , .Lft11,domain_crash_page_fault
|
|
+ .quad .Lft12,domain_crash_page_fault_8 , .Lft13,domain_crash_page_fault
|
|
.previous
|
|
|
|
+.section .rodata,"a"
|
|
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
|
|
ENTRY(domain_crash_synchronous)
|
|
# Get out of the guest-save area of the stack.
|
|
GET_GUEST_REGS(%rax)
|