ia64/xen-unstable

changeset 9678:f2aff4e4236c

[IA64] bug fix in vmx_ivt

Reflect general exception.
break 0 is now handled by vmx_ia64_handle_break.

Signed-off-by: Tristan Gingold <tristan.gingold@bull.net>
author awilliam@xenbuild.aw
date Thu Apr 13 13:46:50 2006 -0600 (2006-04-13)
parents 6755e3ab2eb1
children 6e3841e5ef8f
files xen/arch/ia64/vmx/vmx_ivt.S
line diff
     1.1 --- a/xen/arch/ia64/vmx/vmx_ivt.S	Thu Apr 13 13:41:59 2006 -0600
     1.2 +++ b/xen/arch/ia64/vmx/vmx_ivt.S	Thu Apr 13 13:46:50 2006 -0600
     1.3 @@ -266,12 +266,12 @@ ENTRY(vmx_alt_itlb_miss)
     1.4      mov r29=cr.ipsr;
     1.5      ;;
     1.6      tbit.z p6,p7=r29,IA64_PSR_VM_BIT;
     1.7 -(p7)br.sptk vmx_fault_3
     1.8 +(p7)br.spnt vmx_fault_3
     1.9  vmx_alt_itlb_miss_1:
    1.10  	mov r16=cr.ifa		// get address that caused the TLB miss
    1.11      ;;
    1.12      tbit.z p6,p7=r16,63
    1.13 -(p6)br.sptk vmx_fault_3
    1.14 +(p6)br.spnt vmx_fault_3
    1.15      ;;
    1.16  	movl r17=PAGE_KERNEL
    1.17  	mov r24=cr.ipsr
    1.18 @@ -301,12 +301,12 @@ ENTRY(vmx_alt_dtlb_miss)
    1.19      mov r29=cr.ipsr;
    1.20      ;;
    1.21      tbit.z p6,p7=r29,IA64_PSR_VM_BIT;
    1.22 -(p7)br.sptk vmx_fault_4
    1.23 +(p7)br.spnt vmx_fault_4
    1.24  vmx_alt_dtlb_miss_1:
    1.25  	mov r16=cr.ifa		// get address that caused the TLB miss
    1.26      ;;
    1.27      tbit.z p6,p7=r16,63
    1.28 -(p6)br.sptk vmx_fault_4
    1.29 +(p6)br.spnt vmx_fault_4
    1.30      ;;
    1.31  	movl r17=PAGE_KERNEL
    1.32  	mov r20=cr.isr
    1.33 @@ -391,9 +391,12 @@ ENTRY(vmx_break_fault)
    1.34      mov r30=cr.iim
    1.35      movl r29=0x1100
    1.36      ;;
    1.37 +#ifdef VTI_DEBUG
    1.38 +    // break 0 is already handled in vmx_ia64_handle_break.
    1.39      cmp.eq p6,p7=r30,r0
    1.40      (p6) br.sptk vmx_fault_11
    1.41      ;;
    1.42 +#endif
    1.43      cmp.eq  p6,p7=r29,r30
    1.44      (p6) br.dptk.few vmx_hypercall_dispatch
    1.45      (p7) br.sptk.many vmx_dispatch_break_fault
    1.46 @@ -640,8 +643,8 @@ END(vmx_daccess_rights)
    1.47  // 0x5400 Entry 24 (size 16 bundles) General Exception (5,32,34,36,38,39)
    1.48  ENTRY(vmx_general_exception)
    1.49      VMX_DBG_FAULT(24)
    1.50 -    VMX_FAULT(24)
    1.51 -//    VMX_REFLECT(24)
    1.52 +    VMX_REFLECT(24)
    1.53 +//    VMX_FAULT(24)
    1.54  END(vmx_general_exception)
    1.55  
    1.56  	.org vmx_ia64_ivt+0x5500