direct-io.hg

changeset 13707:0a28ad8cedf2

[PATCH][HVM] fix smp guest hang after restore
[PATCH][HVM] fix smp guest hang after restore

Signed-off-by: Zhai Edwin <edwin.zhai@intel.com>

update the pt irq after restore, otherwise all lapic timer intr are lost
author "Zhai, Edwin" <edwin.zhai@intel.com>
date Tue Jan 30 11:56:25 2007 +0000 (2007-01-30)
parents bca858b72bf8
children dc5e6e65bf10
files xen/arch/x86/hvm/vlapic.c
line diff
     1.1 --- a/xen/arch/x86/hvm/vlapic.c	Tue Jan 30 11:37:18 2007 +0000
     1.2 +++ b/xen/arch/x86/hvm/vlapic.c	Tue Jan 30 11:56:25 2007 +0000
     1.3 @@ -836,14 +836,16 @@ static int lapic_load(hvm_domain_context
     1.4      tmict = vlapic_get_reg(s, APIC_TMICT);
     1.5      if (tmict > 0) {
     1.6          uint64_t period = APIC_BUS_CYCLE_NS * (uint32_t)tmict * s->hw.timer_divisor;
     1.7 +        uint32_t lvtt = vlapic_get_reg(s, APIC_LVTT);
     1.8  
     1.9 +        s->pt.irq = lvtt & APIC_VECTOR_MASK;
    1.10          create_periodic_time(v, &s->pt, period, s->pt.irq,
    1.11                               vlapic_lvtt_period(s), NULL, s);
    1.12  
    1.13          printk("lapic_load to rearm the actimer:"
    1.14                      "bus cycle is %uns, "
    1.15 -                    "saved tmict count %lu, period %"PRIu64"ns\n",
    1.16 -                    APIC_BUS_CYCLE_NS, tmict, period);
    1.17 +                    "saved tmict count %lu, period %"PRIu64"ns, irq=%"PRIu8"\n",
    1.18 +                    APIC_BUS_CYCLE_NS, tmict, period, s->pt.irq);
    1.19  
    1.20      }
    1.21