search for: local_tsc_stamp

Displaying 6 results from an estimated 6 matches for "local_tsc_stamp".

2008 Nov 25
7
when timer go back in dom0 save and restore or migrate, PV domain hung
...6/time.c Tue Nov 18 14:34:14 2008 +0800 +++ b/xen/arch/x86/time.c Fri Nov 21 17:34:15 2008 +0800 @@ -689,7 +689,6 @@ wmb(); (*version)++; } - void update_vcpu_system_time(struct vcpu *v) { struct cpu_time *t; @@ -703,7 +702,6 @@ if ( u->tsc_timestamp == t->local_tsc_stamp ) return; - version_update_begin(&u->version); u->tsc_timestamp = t->local_tsc_stamp; @@ -713,14 +711,19 @@ version_update_end(&u->version); } - void update_domain_wallclock_time(struct domain *d) { spin_lock(&wc_lock); + if(d->a...
2012 Mar 20
5
[hybrid]: hang in update_wall_time
Hi Ian/Stefano: I changed over to the PV clock for hybrid liked we talked at the hackathon. I still have the hang in update_wall_time() after dom0 switches to xen as clocksource. The source of hang seems to be in xen stime_local_stamp in cpu_time that suddenly jumps to a large 64bit value. I''ve been chasing to figure where that happens, and why for the hybrid and not PV. It appears the
2008 Nov 27
1
Re: RE: Re: Re: when timer go back in dom0 save and restore ormigrate, PV domain hung
...89,6 @@ wmb(); (*version)++; } - void update_vcpu_system_time(struct vcpu *v) { struct cpu_time *t; @@ -703,7 +702,6 @@ if ( u->tsc_timestamp == t->local_tsc_stamp ) return; - version_update_begin(&u->version); u->tsc_timestamp = t->local_tsc_stamp; @@ -713,14 +711,19 @@ version_update_end(&u->version); } - void update_do...
2007 Aug 30
0
[PATCH][Retry 1] 1/4: cpufreq/PowerNow! in Xen: Xen timer changes
...mult = new_mult >> 1; + } + while (new_mult < (1LL << 31)) { + new_shift -= 1; + new_mult = new_mult << 1; + } + + t->tsc_scale.mul_frac = new_mult; + t->tsc_scale.shift = new_shift; + local_irq_disable(); + rdtscll(curr_tsc); + t->local_tsc_stamp = curr_tsc; + t->stime_local_stamp = get_s_time(); + t->stime_master_stamp = read_platform_stime(); + local_irq_enable(); + + platform_time_calibration(); +} + /* Set clock to <secs,usecs> after 00:00:00 UTC, 1 January, 1970. */ void do_settime(unsigned long secs, unsigned...
2007 May 15
3
[PATCH 1/12] Add suspend/resume to devices owned by Xen
...unsigned long secs, unsi rcu_read_unlock(&domlist_read_lock); } +static int on_resume; static void local_time_calibration(void *unused) { struct cpu_time *t = &this_cpu(cpu_time); @@ -872,7 +953,8 @@ void init_percpu_time(void) local_irq_save(flags); rdtscll(t->local_tsc_stamp); - now = (smp_processor_id() == 0) ? 0 : read_platform_stime(); + now = ((smp_processor_id() == 0) && !on_resume) ? + 0 : read_platform_stime(); local_irq_restore(flags); t->stime_master_stamp = now; @@ -881,6 +963,11 @@ void init_percpu_time(void)...
2006 Oct 04
0
[PATCH,RFC 6/17] 32-on-64 shared info handling
...v, time); version_update_begin(&u->version); @@ -690,7 +690,7 @@ static inline void __update_vcpu_system_ void update_vcpu_system_time(struct vcpu *v) { - if ( v->vcpu_info->time.tsc_timestamp != + if ( vcpu_info(v, time.tsc_timestamp) != this_cpu(cpu_time).local_tsc_stamp ) __update_vcpu_system_time(v); } @@ -698,10 +698,10 @@ void update_vcpu_system_time(struct vcpu void update_domain_wallclock_time(struct domain *d) { spin_lock(&wc_lock); - version_update_begin(&d->shared_info->wc_version); - d->shared_info->wc_sec = wc_...