[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-ia64-devel] [PATCH] pal_halt_light emulate for domU TAKE3
Hi, Isaku Previous TAKE2 uses vcpu_pend_timer@hlt_timer_fn. (this is one reason.) But logical Source code checks revealed "soft lockup detecteted(>10sec timer stops)" in linux kernel causes from wrong vcpu_get_next_timer_ns value NOT VIRQ_ITC during idle-domain running. About vcpu_get_next_timer_ns In Take1, I just uses vcpu_set_next_timer code. But previous Take2 vcpu_pend_timer is just calculate the domain_itm - ia64_get_itc. It causes problem for case ia64_get_itc > domain_itm, In such a cases, the domain_itm - ia64_get_itc gets large value(more than 10secs), Then "softlock up" is appeared. So this patch does not need to add vcpu_pend_timer fixes. But this should be fixed in sometime. (another reason) Thanks, Atsushi SAKAI >Hi Atsushi. > >On Tue, Aug 22, 2006 at 02:44:34PM +0900, Atsushi SAKAI wrote: > >> As you pointed out, vcpu_pend_timer() is usually used as current. >> This problem does not occur. >> But, I am using vcpu_pend_timer in hlt_timer_fn with other vcpu. >> (This makes problem) > >hlt_timer_fn() doesn't call vcpu_pend_timer(). But vcpu_unblock(). >Do I miss anything else? > >>From your patch. >@@ -240,6 +241,12 @@ void startup_cpu_idle_loop(void) > # error "XMAPPEDREGS_SHIFT doesn't match sizeof(mapped_regs_t)." > #endif > >+void hlt_timer_fn(void *data) >+{ >+ struct vcpu *v = data; >+ vcpu_unblock(v); >+} >+ > >-- >yamahata > _______________________________________________ Xen-ia64-devel mailing list Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-ia64-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |