ia64/xen-unstable

changeset 5981:90c6abbd4a59

Remove misaddressing of cpu_info in PERCPU data

signed-off-by Eddie dong <eddie.dong@intel.com>
author ydong@localhost.localdomain
date Fri Aug 12 11:16:25 2005 +0800 (2005-08-12)
parents 8bd2dc2c653d
children fd61ce502c71
files xen/arch/ia64/hyperprivop.S xen/arch/ia64/ivt.S
line diff
     1.1 --- a/xen/arch/ia64/hyperprivop.S	Thu Aug 11 17:47:31 2005 +0800
     1.2 +++ b/xen/arch/ia64/hyperprivop.S	Fri Aug 12 11:16:25 2005 +0800
     1.3 @@ -306,7 +306,7 @@ GLOBAL_ENTRY(fast_tick_reflect)
     1.4  	mov r28=IA64_TIMER_VECTOR;;
     1.5  	cmp.ne p6,p0=r28,r30
     1.6  (p6)	br.cond.spnt.few rp;;
     1.7 -	movl r20=(PERCPU_ADDR)+IA64_CPUINFO_ITM_NEXT_OFFSET;;
     1.8 +	movl r20=THIS_CPU(cpu_info)+IA64_CPUINFO_ITM_NEXT_OFFSET;;
     1.9  	ld8 r26=[r20];;
    1.10  	mov r27=ar.itc;;
    1.11  	adds r27=200,r27;;	// safety margin
    1.12 @@ -1305,7 +1305,7 @@ ENTRY(hyper_set_itm)
    1.13  	adds r21=1,r21;;
    1.14  	st8 [r20]=r21;;
    1.15  #endif
    1.16 -	movl r20=(PERCPU_ADDR)+IA64_CPUINFO_ITM_NEXT_OFFSET;;
    1.17 +	movl r20=THIS_CPU(cpu_info)+IA64_CPUINFO_ITM_NEXT_OFFSET;;
    1.18  	ld8 r21=[r20];;
    1.19  	mov r20=IA64_KR(CURRENT);;
    1.20  	adds r20=IA64_VCPU_DOMAIN_ITM_OFFSET,r20;;
     2.1 --- a/xen/arch/ia64/ivt.S	Thu Aug 11 17:47:31 2005 +0800
     2.2 +++ b/xen/arch/ia64/ivt.S	Fri Aug 12 11:16:25 2005 +0800
     2.3 @@ -934,7 +934,7 @@ ENTRY(interrupt)
     2.4  	// FIXME: this is a hack... use cpuinfo.ksoftirqd because its
     2.5  	// not used anywhere else and we need a place to stash ivr and
     2.6  	// there's no registers available unused by SAVE_MIN/REST
     2.7 -	movl r29=(PERCPU_ADDR)+IA64_CPUINFO_KSOFTIRQD_OFFSET;;
     2.8 +	movl r29=THIS_CPU(cpu_info)+IA64_CPUINFO_KSOFTIRQD_OFFSET;;
     2.9  	st8 [r29]=r30;;
    2.10  	movl r28=slow_interrupt;;
    2.11  	mov r29=rp;;
    2.12 @@ -954,7 +954,7 @@ slow_interrupt:
    2.13  	;;
    2.14  	alloc r14=ar.pfs,0,0,2,0 // must be first in an insn group
    2.15  #ifdef XEN
    2.16 -	movl out0=(PERCPU_ADDR)+IA64_CPUINFO_KSOFTIRQD_OFFSET;;
    2.17 +	movl out0=THIS_CPU(cpu_info)+IA64_CPUINFO_KSOFTIRQD_OFFSET;;
    2.18  	ld8 out0=[out0];;
    2.19  #else
    2.20  	mov out0=cr.ivr		// pass cr.ivr as first arg