Bug#591362: linux-image-2.6.26-2-xen-686: domU hang and are unresponsive (was #534880)
Package: linux-image-2.6.26-2-xen-686
Version: 2.6.26-24
Severity: important
Bug #534880 in not yet fixed in lenny :-(
I found root cause of the problem; after I added following fix to lenny
xen kernel, none of 56 domU froze again in one week of testing:
--- source_amd64_xen/arch/x86/kernel/time_32-xen.c 2010-07-24 07:28:32.162719094 +0200
+++ source_amd64_xen.new/arch/x86/kernel/time_32-xen.c 2010-07-24 07:26:32.416076711 +0200
@@ -466,6 +466,7 @@
{
s64 delta, delta_cpu, stolen, blocked;
unsigned int i, cpu = smp_processor_id();
+ int schedule_clock_was_set_work = 0;
struct shadow_time_info *shadow = &per_cpu(shadow_time, cpu);
struct vcpu_runstate_info runstate;
@@ -525,12 +526,13 @@
if (shadow_tv_version != HYPERVISOR_shared_info->wc_version) {
update_wallclock();
- if (keventd_up())
- schedule_work(&clock_was_set_work);
+ schedule_clock_was_set_work = 1;
}
write_sequnlock(&xtime_lock);
+ if (schedule_clock_was_set_work && keventd_up())
+ schedule_work(&clock_was_set_work);
/*
* Account stolen ticks.
* HACK: Passing NULL to account_steal_time()
===== End-Of-Patch====
Best regards,
Zdenek Salvet salvet@ics.muni.cz
Institute of Computer Science of Masaryk University, Brno, Czech Republic
and CESNET, z.s.p.o., Prague, Czech Republic
Phone: ++420-549 49 6534 Fax: ++420-541 212 747
----------------------------------------------------------------------------
Teamwork is essential -- it allows you to blame someone else.
Reply to: