[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] [IA64] Revert xen-ia64-unstable.hg cset 10685
# HG changeset patch # User awilliam@xxxxxxxxxxx # Node ID b2abc70be89e02d0d380674096c8c1fb9e552431 # Parent e61bb865ec7407cd4a7a9b95485637009202a5ab [IA64] Revert xen-ia64-unstable.hg cset 10685 This reverts the following xen-ia64-unstable.hg cset: "[IA64] emulate PAL_HALT_LIGHT on domU" 10685:8ad37880564dff8599f2f410f7bd0c54a50a29e2 Signed-off-by: Alex Williamson <alex.williamson@xxxxxx> --- xen/arch/ia64/vmx/vlsapic.c | 2 ++ xen/arch/ia64/xen/domain.c | 11 ----------- xen/arch/ia64/xen/hypercall.c | 4 +--- xen/arch/ia64/xen/xentime.c | 14 ++++++++++++++ xen/include/asm-ia64/domain.h | 1 - xen/include/asm-ia64/time.h | 24 ------------------------ xen/include/asm-ia64/vcpu.h | 8 -------- 7 files changed, 17 insertions(+), 47 deletions(-) diff -r e61bb865ec74 -r b2abc70be89e xen/arch/ia64/vmx/vlsapic.c --- a/xen/arch/ia64/vmx/vlsapic.c Fri Jul 14 11:18:36 2006 -0600 +++ b/xen/arch/ia64/vmx/vlsapic.c Wed Jul 19 07:17:54 2006 -0600 @@ -165,6 +165,8 @@ void vtm_set_itc(VCPU *vcpu, uint64_t ne #define TIMER_SLOP (50*1000) /* ns */ /* copy from timer.c */ +extern u64 cycle_to_ns(u64 cyle); + void vtm_set_itm(VCPU *vcpu, uint64_t val) { diff -r e61bb865ec74 -r b2abc70be89e xen/arch/ia64/xen/domain.c --- a/xen/arch/ia64/xen/domain.c Fri Jul 14 11:18:36 2006 -0600 +++ b/xen/arch/ia64/xen/domain.c Wed Jul 19 07:17:54 2006 -0600 @@ -248,14 +248,6 @@ void startup_cpu_idle_loop(void) continue_cpu_idle_loop(); } -void hlt_timer_fn(void *data) -{ - struct vcpu *v = data; - if (vcpu_timer_expired(v)) - vcpu_pend_timer(v); - vcpu_unblock(v); -} - struct vcpu *alloc_vcpu_struct(struct domain *d, unsigned int vcpu_id) { struct vcpu *v; @@ -311,8 +303,6 @@ struct vcpu *alloc_vcpu_struct(struct do v->arch.breakimm = d->arch.breakimm; v->arch.last_processor = INVALID_PROCESSOR; } - if (!VMX_DOMAIN(v)) - init_timer(&v->arch.hlt_timer, hlt_timer_fn, v, v->processor); return v; } @@ -325,7 +315,6 @@ void free_vcpu_struct(struct vcpu *v) if (v->arch.privregs != NULL) free_xenheap_pages(v->arch.privregs, get_order_from_shift(XMAPPEDREGS_SHIFT)); - kill_timer(&v->arch.hlt_timer); } free_xenheap_pages(v, KERNEL_STACK_SIZE_ORDER); diff -r e61bb865ec74 -r b2abc70be89e xen/arch/ia64/xen/hypercall.c --- a/xen/arch/ia64/xen/hypercall.c Fri Jul 14 11:18:36 2006 -0600 +++ b/xen/arch/ia64/xen/hypercall.c Wed Jul 19 07:17:54 2006 -0600 @@ -220,9 +220,7 @@ fw_hypercall (struct pt_regs *regs) } else { pal_halt_light_count++; - set_timer(&v->arch.hlt_timer, - vcpu_get_next_timer_ns(v)); - do_sched_op_compat(SCHEDOP_block, 0); + do_sched_op_compat(SCHEDOP_yield, 0); } regs->r8 = 0; regs->r9 = 0; diff -r e61bb865ec74 -r b2abc70be89e xen/arch/ia64/xen/xentime.c --- a/xen/arch/ia64/xen/xentime.c Fri Jul 14 11:18:36 2006 -0600 +++ b/xen/arch/ia64/xen/xentime.c Wed Jul 19 07:17:54 2006 -0600 @@ -41,6 +41,20 @@ static s_time_t stime_irq = 0x0; static s_time_t stime_irq = 0x0; /* System time at last 'time update' */ unsigned long itc_scale, ns_scale; unsigned long itc_at_irq; + +/* We don't expect an absolute cycle value here, since then no way + * to prevent overflow for large norminator. Normally this conversion + * is used for relative offset. + */ +u64 cycle_to_ns(u64 cycle) +{ + return (cycle * itc_scale) >> 32; +} + +u64 ns_to_cycle(u64 ns) +{ + return (ns * ns_scale) >> 32; +} static inline u64 get_time_delta(void) { diff -r e61bb865ec74 -r b2abc70be89e xen/include/asm-ia64/domain.h --- a/xen/include/asm-ia64/domain.h Fri Jul 14 11:18:36 2006 -0600 +++ b/xen/include/asm-ia64/domain.h Wed Jul 19 07:17:54 2006 -0600 @@ -170,7 +170,6 @@ struct arch_vcpu { unsigned long old_rsc; int mode_flags; fpswa_ret_t fpswa_ret; /* save return values of FPSWA emulation */ - struct timer hlt_timer; struct arch_vmx_struct arch_vmx; /* Virtual Machine Extensions */ #define INVALID_PROCESSOR INT_MAX diff -r e61bb865ec74 -r b2abc70be89e xen/include/asm-ia64/time.h --- a/xen/include/asm-ia64/time.h Fri Jul 14 11:18:36 2006 -0600 +++ b/xen/include/asm-ia64/time.h Wed Jul 19 07:17:54 2006 -0600 @@ -1,26 +1,2 @@ -#ifndef _XEN_IA64_TIME_H -#define _XEN_IA64_TIME_H - #include <asm/linux/time.h> #include <asm/timex.h> - -extern unsigned long itc_scale; -extern unsigned long ns_scale; - -/* We don't expect an absolute cycle value here, since then no way - * to prevent overflow for large norminator. Normally this conversion - * is used for relative offset. - */ -static inline u64 -cycle_to_ns(u64 cycle) -{ - return (cycle * itc_scale) >> 32; -} - -static inline u64 -ns_to_cycle(u64 ns) -{ - return (ns * ns_scale) >> 32; -} - -#endif /* _XEN_IA64_TIME_H */ diff -r e61bb865ec74 -r b2abc70be89e xen/include/asm-ia64/vcpu.h --- a/xen/include/asm-ia64/vcpu.h Fri Jul 14 11:18:36 2006 -0600 +++ b/xen/include/asm-ia64/vcpu.h Wed Jul 19 07:17:54 2006 -0600 @@ -4,11 +4,9 @@ // TODO: Many (or perhaps most) of these should eventually be // static inline functions -#include <asm/delay.h> #include <asm/fpu.h> #include <asm/tlb.h> #include <asm/ia64_int.h> -#include <asm/time.h> #include <public/arch-ia64.h> typedef unsigned long UINT64; typedef unsigned int UINT; @@ -184,12 +182,6 @@ itir_mask(UINT64 itir) return (~((1UL << itir_ps(itir)) - 1)); } -static inline u64 -vcpu_get_next_timer_ns(VCPU *vcpu) -{ - return cycle_to_ns(PSCBX(vcpu, domain_itm) - ia64_get_itc()) + NOW(); -} - #define verbose(a...) do {if (vcpu_verbose) printf(a);} while(0) //#define vcpu_quick_region_check(_tr_regions,_ifa) 1 _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |