[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [IA64] VTI: Fix two bugs
# HG changeset patch # User awilliam@xxxxxxxxxxx # Node ID c18c63f87b7d511eb526a1ddd910b3ff6d069f4a # Parent 67ea7868089b2e351973fdab60d6eba2fdabc260 [IA64] VTI: Fix two bugs 1. Vmx_check_pending_irq should not be called in vmx_vcpu_set_eoi, because vmx_vcpu_increment_iip is called after vmx_vcpu_set_eoi. That is, the first instruction of guest interrupt handler will be skipped. 2. Remove code segment which was used to send events to VTIdomain, when dom0 was VTIdomain. This is not needed any more, and will cause VTIdomain on SMP-HOST complain "Unexpected interrupt ..." . Signed-off-by: Anthony Xu <anthony.xu@xxxxxxxxx> diff -r 67ea7868089b -r c18c63f87b7d xen/arch/ia64/vmx/vlsapic.c --- a/xen/arch/ia64/vmx/vlsapic.c Fri Feb 24 20:30:39 2006 +++ b/xen/arch/ia64/vmx/vlsapic.c Fri Feb 24 20:38:26 2006 @@ -575,7 +575,8 @@ VLSAPIC_INSVC(vcpu,vec>>6) &= ~(1UL <<(vec&63)); local_irq_restore(spsr); VCPU(vcpu, eoi)=0; // overwrite the data - vmx_check_pending_irq(vcpu); + vcpu->arch.irq_new_pending=1; +// vmx_check_pending_irq(vcpu); } uint64_t guest_read_vivr(VCPU *vcpu) diff -r 67ea7868089b -r c18c63f87b7d xen/arch/ia64/vmx/vmx_process.c --- a/xen/arch/ia64/vmx/vmx_process.c Fri Feb 24 20:30:39 2006 +++ b/xen/arch/ia64/vmx/vmx_process.c Fri Feb 24 20:38:26 2006 @@ -262,10 +262,10 @@ * * Now hardcode the vector as 0x10 temporarily */ - if (event_pending(v)&&(!(VLSAPIC_INSVC(v,0)&(1UL<<0x10)))) { - VCPU(v, irr[0]) |= 1UL << 0x10; - v->arch.irq_new_pending = 1; - } +// if (event_pending(v)&&(!(VLSAPIC_INSVC(v,0)&(1UL<<0x10)))) { +// VCPU(v, irr[0]) |= 1UL << 0x10; +// v->arch.irq_new_pending = 1; +// } if ( v->arch.irq_new_pending ) { v->arch.irq_new_pending = 0; _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |