ia64/xen-unstable

changeset 15159:ab677b67b4a5

[IA64] hyper_rfi: do not validate vcr.iip anymore.

This is useless: if iip is within the vmm, this will be caught by the mmu.

Signed-off-by: Tristan Gingold <tgingold@free.fr>
author Alex Williamson <alex.williamson@hp.com>
date Mon Jun 04 14:12:19 2007 -0600 (2007-06-04)
parents dc227a849d02
children f3f59dafaa18
files xen/arch/ia64/xen/hyperprivop.S
line diff
     1.1 --- a/xen/arch/ia64/xen/hyperprivop.S	Mon Jun 04 14:10:30 2007 -0600
     1.2 +++ b/xen/arch/ia64/xen/hyperprivop.S	Mon Jun 04 14:12:19 2007 -0600
     1.3 @@ -1087,23 +1087,16 @@ 1:
     1.4  	ld4 r20=[r20];;
     1.5  	cmp.ne p7,p0=r20,r0
     1.6  (p7)	br.spnt.few slow_vcpu_rfi ;;
     1.7 +#if 0
     1.8  	// if domain hasn't already done virtual bank switch
     1.9  	//  do it the slow way (FIXME later?)
    1.10 -#if 0
    1.11  	adds r20=XSI_BANKNUM_OFS-XSI_PSR_IC_OFS,r18 ;;
    1.12  	ld4 r20=[r20];;
    1.13  	cmp.eq p7,p0=r20,r0
    1.14  (p7)	br.spnt.few slow_vcpu_rfi ;;
    1.15  #endif
    1.16 -	// validate vcr.iip, if in Xen range, do it the slow way
    1.17  	adds r20=XSI_IIP_OFS-XSI_PSR_IC_OFS,r18 ;;
    1.18  	ld8 r22=[r20];;
    1.19 -	movl r23=HYPERVISOR_VIRT_START
    1.20 -	movl r24=HYPERVISOR_VIRT_END;;
    1.21 -	cmp.ltu p0,p7=r22,r23 ;;	// if !(iip<low) &&
    1.22 -(p7)	cmp.geu p0,p7=r22,r24 ;;	//    !(iip>=high)
    1.23 -(p7)	br.spnt.few slow_vcpu_rfi ;;
    1.24 -
    1.25  1:	// OK now, let's do an rfi.
    1.26  #ifdef FAST_HYPERPRIVOP_CNT
    1.27  	movl r20=FAST_HYPERPRIVOP_PERFC(HYPERPRIVOP_RFI);;