[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] Rename and clean up 'error_code' path in entry.S.
# HG changeset patch # User kaf24@xxxxxxxxxxxxxxxxxxxx # Node ID 8c27368b12ad74529ee06d96b8eb6fcc52bc02ff # Parent db44b783fe09f22ededdbd383d853364387da918 Rename and clean up 'error_code' path in entry.S. Signed-off-by: Keir Fraser <keir@xxxxxxxxxxxxx> diff -r db44b783fe09 -r 8c27368b12ad xen/arch/x86/x86_32/entry.S --- a/xen/arch/x86/x86_32/entry.S Thu Apr 6 16:25:24 2006 +++ b/xen/arch/x86/x86_32/entry.S Thu Apr 6 16:32:47 2006 @@ -119,7 +119,7 @@ movl $DBLFLT1,%eax pushl %eax # EIP pushl %esi # error_code/entry_vector - jmp error_code + jmp handle_exception DBLFLT1:GET_CURRENT(%ebx) jmp test_all_events failsafe_callback: @@ -381,14 +381,6 @@ jmp __domain_crash_synchronous ALIGN -process_guest_exception_and_events: - leal VCPU_trap_bounce(%ebx),%edx - testb $TBF_EXCEPTION,TRAPBOUNCE_flags(%edx) - jz test_all_events - call create_bounce_frame - jmp test_all_events - - ALIGN ENTRY(ret_from_intr) GET_CURRENT(%ebx) movl UREGS_eflags(%esp),%eax @@ -400,7 +392,7 @@ ENTRY(divide_error) pushl $TRAP_divide_error<<16 ALIGN -error_code: +handle_exception: FIXUP_RING0_GUEST_STACK SAVE_ALL_NOSEGREGS(a) SET_XEN_SEGMENTS(a) @@ -419,7 +411,11 @@ movb UREGS_cs(%esp),%al testl $(3|X86_EFLAGS_VM),%eax jz restore_all_xen - jmp process_guest_exception_and_events + leal VCPU_trap_bounce(%ebx),%edx + testb $TBF_EXCEPTION,TRAPBOUNCE_flags(%edx) + jz test_all_events + call create_bounce_frame + jmp test_all_events exception_with_ints_disabled: movl UREGS_eflags(%esp),%eax @@ -452,71 +448,71 @@ ENTRY(coprocessor_error) pushl $TRAP_copro_error<<16 - jmp error_code + jmp handle_exception ENTRY(simd_coprocessor_error) pushl $TRAP_simd_error<<16 - jmp error_code + jmp handle_exception ENTRY(device_not_available) pushl $TRAP_no_device<<16 - jmp error_code + jmp handle_exception ENTRY(debug) pushl $TRAP_debug<<16 - jmp error_code + jmp handle_exception ENTRY(int3) pushl $TRAP_int3<<16 - jmp error_code + jmp handle_exception ENTRY(overflow) pushl $TRAP_overflow<<16 - jmp error_code + jmp handle_exception ENTRY(bounds) pushl $TRAP_bounds<<16 - jmp error_code + jmp handle_exception ENTRY(invalid_op) pushl $TRAP_invalid_op<<16 - jmp error_code + jmp handle_exception ENTRY(coprocessor_segment_overrun) pushl $TRAP_copro_seg<<16 - jmp error_code + jmp handle_exception ENTRY(invalid_TSS) - movw $TRAP_invalid_tss,2(%esp) - jmp error_code + movw $TRAP_invalid_tss,2(%esp) + jmp handle_exception ENTRY(segment_not_present) - movw $TRAP_no_segment,2(%esp) - jmp error_code + movw $TRAP_no_segment,2(%esp) + jmp handle_exception ENTRY(stack_segment) - movw $TRAP_stack_error,2(%esp) - jmp error_code + movw $TRAP_stack_error,2(%esp) + jmp handle_exception ENTRY(general_protection) - movw $TRAP_gp_fault,2(%esp) - jmp error_code + movw $TRAP_gp_fault,2(%esp) + jmp handle_exception ENTRY(alignment_check) - movw $TRAP_alignment_check,2(%esp) - jmp error_code + movw $TRAP_alignment_check,2(%esp) + jmp handle_exception ENTRY(page_fault) - movw $TRAP_page_fault,2(%esp) - jmp error_code + movw $TRAP_page_fault,2(%esp) + jmp handle_exception ENTRY(machine_check) pushl $TRAP_machine_check<<16 - jmp error_code + jmp handle_exception ENTRY(spurious_interrupt_bug) pushl $TRAP_spurious_int<<16 - jmp error_code + jmp handle_exception ENTRY(nmi) #ifdef CONFIG_X86_SUPERVISOR_MODE_KERNEL diff -r db44b783fe09 -r 8c27368b12ad xen/arch/x86/x86_64/entry.S --- a/xen/arch/x86/x86_64/entry.S Thu Apr 6 16:25:24 2006 +++ b/xen/arch/x86/x86_64/entry.S Thu Apr 6 16:32:47 2006 @@ -68,7 +68,7 @@ leaq DBLFLT1(%rip),%rax pushq %rax # RIP pushq %rsi # error_code/entry_vector - jmp error_code + jmp handle_exception DBLFLT1:GET_CURRENT(%rbx) jmp test_all_events failsafe_callback: @@ -320,15 +320,6 @@ jmp __domain_crash_synchronous ALIGN -/* %rbx: struct vcpu */ -process_guest_exception_and_events: - leaq VCPU_trap_bounce(%rbx),%rdx - testb $TBF_EXCEPTION,TRAPBOUNCE_flags(%rdx) - jz test_all_events - call create_bounce_frame - jmp test_all_events - - ALIGN /* No special register assumptions. */ ENTRY(ret_from_intr) GET_CURRENT(%rbx) @@ -338,7 +329,7 @@ ALIGN /* No special register assumptions. */ -error_code: +handle_exception: SAVE_ALL testb $X86_EFLAGS_IF>>8,UREGS_eflags+1(%rsp) jz exception_with_ints_disabled @@ -351,7 +342,11 @@ callq *(%rdx,%rax,8) testb $3,UREGS_cs(%rsp) jz restore_all_xen - jmp process_guest_exception_and_events + leaq VCPU_trap_bounce(%rbx),%rdx + testb $TBF_EXCEPTION,TRAPBOUNCE_flags(%rdx) + jz test_all_events + call create_bounce_frame + jmp test_all_events /* No special register assumptions. */ exception_with_ints_disabled: @@ -384,90 +379,90 @@ ENTRY(divide_error) pushq $0 movl $TRAP_divide_error,4(%rsp) - jmp error_code + jmp handle_exception ENTRY(coprocessor_error) pushq $0 movl $TRAP_copro_error,4(%rsp) - jmp error_code + jmp handle_exception ENTRY(simd_coprocessor_error) pushq $0 movl $TRAP_simd_error,4(%rsp) - jmp error_code + jmp handle_exception ENTRY(device_not_available) pushq $0 movl $TRAP_no_device,4(%rsp) - jmp error_code + jmp handle_exception ENTRY(debug) pushq $0 movl $TRAP_debug,4(%rsp) - jmp error_code + jmp handle_exception ENTRY(int3) pushq $0 movl $TRAP_int3,4(%rsp) - jmp error_code + jmp handle_exception ENTRY(overflow) pushq $0 movl $TRAP_overflow,4(%rsp) - jmp error_code + jmp handle_exception ENTRY(bounds) pushq $0 movl $TRAP_bounds,4(%rsp) - jmp error_code + jmp handle_exception ENTRY(invalid_op) pushq $0 movl $TRAP_invalid_op,4(%rsp) - jmp error_code + jmp handle_exception ENTRY(coprocessor_segment_overrun) pushq $0 movl $TRAP_copro_seg,4(%rsp) - jmp error_code + jmp handle_exception ENTRY(invalid_TSS) movl $TRAP_invalid_tss,4(%rsp) - jmp error_code + jmp handle_exception ENTRY(segment_not_present) movl $TRAP_no_segment,4(%rsp) - jmp error_code + jmp handle_exception ENTRY(stack_segment) movl $TRAP_stack_error,4(%rsp) - jmp error_code + jmp handle_exception ENTRY(general_protection) movl $TRAP_gp_fault,4(%rsp) - jmp error_code + jmp handle_exception ENTRY(alignment_check) movl $TRAP_alignment_check,4(%rsp) - jmp error_code + jmp handle_exception ENTRY(page_fault) movl $TRAP_page_fault,4(%rsp) - jmp error_code + jmp handle_exception ENTRY(machine_check) pushq $0 movl $TRAP_machine_check,4(%rsp) - jmp error_code + jmp handle_exception ENTRY(spurious_interrupt_bug) pushq $0 movl $TRAP_spurious_int,4(%rsp) - jmp error_code + jmp handle_exception ENTRY(double_fault) movl $TRAP_double_fault,4(%rsp) - jmp error_code + jmp handle_exception ENTRY(nmi) pushq $0 _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |