flight 17716 xen-unstable real [real]
http://www.chiark.greenend.org.uk/~xensrcts/logs/17716/
Regressions :-(
Tests which did not succeed and are blocking,
including tests which could not be run:
test-amd64-amd64-xl-qemut-win7-amd64 8 guest-saverestore fail REGR. vs. 17714
test-amd64-amd64-xl-qemuu-winxpsp3 8 guest-saverestore fail REGR. vs. 17713
test-amd64-i386-xend-winxpsp3 8 guest-saverestore fail REGR. vs. 17714
test-amd64-amd64-xl-win7-amd64 8 guest-saverestore fail REGR. vs. 17714
test-amd64-i386-xl-win7-amd64 8 guest-saverestore fail REGR. vs. 17714
test-amd64-i386-xl-qemut-win7-amd64 8 guest-saverestore fail REGR. vs. 17714
test-amd64-amd64-xl-winxpsp3 8 guest-saverestore fail REGR. vs. 17714
test-amd64-amd64-xl-qemut-winxpsp3 8 guest-saverestore fail REGR. vs. 17714
test-amd64-i386-xl-qemut-winxpsp3-vcpus1 10 guest-saverestore.2 fail REGR. vs.
17714
test-amd64-i386-xend-qemut-winxpsp3 8 guest-saverestore fail REGR. vs. 17714
Tests which did not succeed, but are not blocking:
test-amd64-amd64-xl-pcipt-intel 9 guest-start fail never pass
test-amd64-i386-xl-winxpsp3-vcpus1 13 guest-stop fail never pass
test-amd64-amd64-xl-qemuu-win7-amd64 13 guest-stop fail never pass
version targeted for testing:
xen 8d266f6b2c5c3d2d0da42f1e40ba1fb2ac8fdf1a
baseline version:
xen 26c35e5cb93a7b4dcde940620eb7ac1845ed6e5a
------------------------------------------------------------
People who touched revisions under test:
George Dunlap <george.dunlap@eu.citrix.com> (from a release perspective)
Keir Fraser <keir@xen.org>
Yang Zhang <yang.z.zhang@Intel.com>
------------------------------------------------------------
jobs:
build-amd64 pass
build-armhf pass
build-i386 pass
build-amd64-oldkern pass
build-i386-oldkern pass
build-amd64-pvops pass
build-i386-pvops pass
test-amd64-amd64-xl pass
test-amd64-i386-xl pass
test-amd64-i386-rhel6hvm-amd pass
test-amd64-i386-qemut-rhel6hvm-amd pass
test-amd64-i386-qemuu-rhel6hvm-amd pass
test-amd64-amd64-xl-qemut-win7-amd64 fail
test-amd64-i386-xl-qemut-win7-amd64 fail
test-amd64-amd64-xl-qemuu-win7-amd64 fail
test-amd64-amd64-xl-win7-amd64 fail
test-amd64-i386-xl-win7-amd64 fail
test-amd64-i386-xl-credit2 pass
test-amd64-amd64-xl-pcipt-intel fail
test-amd64-i386-rhel6hvm-intel pass
test-amd64-i386-qemut-rhel6hvm-intel pass
test-amd64-i386-qemuu-rhel6hvm-intel pass
test-amd64-i386-xl-multivcpu pass
test-amd64-amd64-pair pass
test-amd64-i386-pair pass
test-amd64-amd64-xl-sedf-pin pass
test-amd64-amd64-pv pass
test-amd64-i386-pv pass
test-amd64-amd64-xl-sedf pass
test-amd64-i386-xl-qemut-winxpsp3-vcpus1 fail
test-amd64-i386-xl-winxpsp3-vcpus1 fail
test-amd64-i386-xend-qemut-winxpsp3 fail
test-amd64-amd64-xl-qemut-winxpsp3 fail
test-amd64-amd64-xl-qemuu-winxpsp3 fail
test-amd64-i386-xend-winxpsp3 fail
test-amd64-amd64-xl-winxpsp3 fail
------------------------------------------------------------
sg-report-flight on woking.cam.xci-test.com
logs: /home/xc_osstest/logs
images: /home/xc_osstest/images
Logs, config files, etc. are available at
http://www.chiark.greenend.org.uk/~xensrcts/logs
Test harness code can be found at
http://xenbits.xensource.com/gitweb?p=osstest.git;a=summary
Not pushing.
------------------------------------------------------------
commit 8d266f6b2c5c3d2d0da42f1e40ba1fb2ac8fdf1a
Author: Yang Zhang <yang.z.zhang@Intel.com>
Date: Thu Apr 18 11:36:28 2013 +0200
VMX: Use posted interrupt to deliver virutal interrupt
Deliver virtual interrupt through posted way if posted interrupt
is enabled.
Signed-off-by: Yang Zhang <yang.z.zhang@Intel.com>
Reviewed-by: Jun Nakajima <jun.nakajima@intel.com>
Acked-by: Keir Fraser <keir@xen.org>
Acked-by: George Dunlap <george.dunlap@eu.citrix.com> (from a release
perspective)
commit 04015d6326f17e4aafb32593b94dac44b72ef4c1
Author: Yang Zhang <yang.z.zhang@Intel.com>
Date: Thu Apr 18 11:35:43 2013 +0200
x86/HVM: Call vlapic_set_irq() to delivery virtual interrupt
Move kick_vcpu into vlapic_set_irq. And call it to deliver virtual interrupt
instead set vIRR directly.
Signed-off-by: Yang Zhang <yang.z.zhang@Intel.com>
Acked-by: Keir Fraser <keir@xen.org>
Acked-by: George Dunlap <george.dunlap@eu.citrix.com> (from a release
perspective)
commit d7dafa375bc13772e2e3274d975d544af4208939
Author: Yang Zhang <yang.z.zhang@Intel.com>
Date: Thu Apr 18 11:34:49 2013 +0200
VMX: Add posted interrupt supporting
Add the supporting of using posted interrupt to deliver interrupt.
Signed-off-by: Yang Zhang <yang.z.zhang@Intel.com>
Reviewed-by: Jun Nakajima <jun.nakajima@intel.com>
Acked-by: Keir Fraser <keir@xen.org>
Acked-by: George Dunlap <george.dunlap@eu.citrix.com> (from a release
perspective)
commit 1c0ac49b1d6c3d54fc1f75661742a988ca7cf255
Author: Yang Zhang <yang.z.zhang@Intel.com>
Date: Thu Apr 18 11:34:04 2013 +0200
VMX: Turn on posted interrupt bit in vmcs
Turn on posted interrupt for vcpu if posted interrupt is avaliable.
Signed-off-by: Yang Zhang <yang.z.zhang@Intel.com>
Reviewed-by: Jun Nakajima <jun.nakajima@intel.com>
Acked-by: Keir Fraser <keir@xen.org>
Acked-by: George Dunlap <george.dunlap@eu.citrix.com> (from a release
perspective)
commit b266924990af96ee47ee299e1b6bb87fac2e2548
Author: Yang Zhang <yang.z.zhang@Intel.com>
Date: Thu Apr 18 11:32:02 2013 +0200
VMX: Detect posted interrupt capability
Check whether the Hardware supports posted interrupt capability.
Signed-off-by: Yang Zhang <yang.z.zhang@Intel.com>
Reviewed-by: Jun Nakajima <jun.nakajima@intel.com>
Acked-by: Keir Fraser <keir@xen.org>
Acked-by: George Dunlap <george.dunlap@eu.citrix.com> (from a release
perspective)
(qemu changes not included)
>>> On 18.04.13 at 18:12, xen.org <ian.jackson@eu.citrix.com> wrote: > flight 17716 xen-unstable real [real] > http://www.chiark.greenend.org.uk/~xensrcts/logs/17716/ > > Regressions :-( > > Tests which did not succeed and are blocking, > including tests which could not be run: > test-amd64-amd64-xl-qemut-win7-amd64 8 guest-saverestore fail REGR. vs. 17714 > test-amd64-amd64-xl-qemuu-winxpsp3 8 guest-saverestore fail REGR. vs. 17713 > test-amd64-i386-xend-winxpsp3 8 guest-saverestore fail REGR. vs. 17714 > test-amd64-amd64-xl-win7-amd64 8 guest-saverestore fail REGR. vs. 17714 > test-amd64-i386-xl-win7-amd64 8 guest-saverestore fail REGR. vs. 17714 > test-amd64-i386-xl-qemut-win7-amd64 8 guest-saverestore fail REGR. vs. 17714 > test-amd64-amd64-xl-winxpsp3 8 guest-saverestore fail REGR. vs. 17714 > test-amd64-amd64-xl-qemut-winxpsp3 8 guest-saverestore fail REGR. vs. 17714 > test-amd64-i386-xl-qemut-winxpsp3-vcpus1 10 guest-saverestore.2 fail REGR. vs. 17714 > test-amd64-i386-xend-qemut-winxpsp3 8 guest-saverestore fail REGR. vs. 17714There are floods of (host side!) APIC errors in the logs, and it the posted interrupt series seems the most likely reason for this. I''ll try to look into this in more detail, but input from you on possible reasons would be greatly appreciated. Of course I can''t fully exclude that with the little bit of cleanup I did to your patches I screwed up something... Jan
>>> On 19.04.13 at 10:38, "Jan Beulich" <JBeulich@suse.com> wrote: >>>> On 18.04.13 at 18:12, xen.org <ian.jackson@eu.citrix.com> wrote: >> flight 17716 xen-unstable real [real] >> http://www.chiark.greenend.org.uk/~xensrcts/logs/17716/ >> >> Regressions :-( >> >> Tests which did not succeed and are blocking, >> including tests which could not be run: >> test-amd64-amd64-xl-qemut-win7-amd64 8 guest-saverestore fail REGR. vs. 17714 >> test-amd64-amd64-xl-qemuu-winxpsp3 8 guest-saverestore fail REGR. vs. 17713 >> test-amd64-i386-xend-winxpsp3 8 guest-saverestore fail REGR. vs. 17714 >> test-amd64-amd64-xl-win7-amd64 8 guest-saverestore fail REGR. vs. 17714 >> test-amd64-i386-xl-win7-amd64 8 guest-saverestore fail REGR. vs. 17714 >> test-amd64-i386-xl-qemut-win7-amd64 8 guest-saverestore fail REGR. vs. 17714 >> test-amd64-amd64-xl-winxpsp3 8 guest-saverestore fail REGR. vs. 17714 >> test-amd64-amd64-xl-qemut-winxpsp3 8 guest-saverestore fail REGR. vs. 17714 >> test-amd64-i386-xl-qemut-winxpsp3-vcpus1 10 guest-saverestore.2 fail REGR. vs. 17714 >> test-amd64-i386-xend-qemut-winxpsp3 8 guest-saverestore fail REGR. vs. 17714 > > There are floods of (host side!) APIC errors in the logs, and it > the posted interrupt series seems the most likely reason for > this. I''ll try to look into this in more detail, but input from you > on possible reasons would be greatly appreciated. Of course I > can''t fully exclude that with the little bit of cleanup I did to your > patches I screwed up something...So I guess its the send_IPI_mask() here: static void __vmx_deliver_posted_interrupt(struct vcpu *v) { bool_t running = v->is_running; vcpu_unblock(v); if ( running && (in_irq() || (v != current)) ) { unsigned int cpu = v->processor; if ( !test_and_set_bit(VCPU_KICK_SOFTIRQ, &softirq_pending(cpu)) && (cpu != smp_processor_id()) ) send_IPI_mask(cpumask_of(cpu), posted_intr_vector); } } Which is supposed to be unreachable on systems that don''t support posted interrupts, but if ( cpu_has_vmx_posted_intr_processing ) alloc_direct_apic_vector(&posted_intr_vector, event_check_interrupt); else { hvm_funcs.deliver_posted_intr = NULL; hvm_funcs.sync_pir_to_irr = NULL; } adjusts the wrong pointers because of the subsequent return &vmx_function_table; Hence I guess the below fix is needed. Jan VMX: adjust correct table when there''s no posted interrupt support The caller of start_vmx() will overwrite hvm_funcs, so there''s no point in adjusting that table in start_vmx(). Signed-off-by: Jan Beulich <jbeulich@suse.com> --- a/xen/arch/x86/hvm/vmx/vmx.c +++ b/xen/arch/x86/hvm/vmx/vmx.c @@ -1587,8 +1587,8 @@ struct hvm_function_table * __init start alloc_direct_apic_vector(&posted_intr_vector, event_check_interrupt); else { - hvm_funcs.deliver_posted_intr = NULL; - hvm_funcs.sync_pir_to_irr = NULL; + vmx_function_table.deliver_posted_intr = NULL; + vmx_function_table.sync_pir_to_irr = NULL; } setup_vmcs_dump();
Jan Beulich wrote on 2013-04-19:>>>> On 19.04.13 at 10:38, "Jan Beulich" <JBeulich@suse.com> wrote: >>>>> On 18.04.13 at 18:12, xen.org <ian.jackson@eu.citrix.com> wrote: >>> flight 17716 xen-unstable real [real] >>> http://www.chiark.greenend.org.uk/~xensrcts/logs/17716/ >>> >>> Regressions :-( >>> >>> Tests which did not succeed and are blocking, >>> including tests which could not be run: >>> test-amd64-amd64-xl-qemut-win7-amd64 8 guest-saverestore fail REGR. >>> vs. 17714 test-amd64-amd64-xl-qemuu-winxpsp3 8 guest-saverestore >>> fail REGR. vs. 17713 test-amd64-i386-xend-winxpsp3 8 >>> guest-saverestore fail REGR. vs. 17714 >>> test-amd64-amd64-xl-win7-amd64 8 guest-saverestore fail REGR. >>> vs. 17714 test-amd64-i386-xl-win7-amd64 8 guest-saverestore >>> fail REGR. vs. 17714 test-amd64-i386-xl-qemut-win7-amd64 8 >>> guest-saverestore fail REGR. vs. 17714 test-amd64-amd64-xl-winxpsp3 >>> 8 guest-saverestore fail REGR. vs. 17714 >>> test-amd64-amd64-xl-qemut-winxpsp3 8 guest-saverestore fail REGR. >>> vs. 17714 test-amd64-i386-xl-qemut-winxpsp3-vcpus1 10 >>> guest-saverestore.2 fail REGR. vs. 17714 >>> test-amd64-i386-xend-qemut-winxpsp3 8 guest-saverestore fail REGR. > vs. 17714 >> >> There are floods of (host side!) APIC errors in the logs, and it >> the posted interrupt series seems the most likely reason for >> this. I''ll try to look into this in more detail, but input from you >> on possible reasons would be greatly appreciated. Of course I >> can''t fully exclude that with the little bit of cleanup I did to your >> patches I screwed up something... > > So I guess its the send_IPI_mask() here: > > static void __vmx_deliver_posted_interrupt(struct vcpu *v) > { > bool_t running = v->is_running; > > vcpu_unblock(v); > if ( running && (in_irq() || (v != current)) ) > { > unsigned int cpu = v->processor; > > if ( !test_and_set_bit(VCPU_KICK_SOFTIRQ, &softirq_pending(cpu)) > && (cpu != smp_processor_id()) ) > send_IPI_mask(cpumask_of(cpu), posted_intr_vector); > } > } > > Which is supposed to be unreachable on systems that don''t > support posted interrupts, but > > if ( cpu_has_vmx_posted_intr_processing ) > alloc_direct_apic_vector(&posted_intr_vector, > event_check_interrupt); > else > { > hvm_funcs.deliver_posted_intr = NULL; > hvm_funcs.sync_pir_to_irr = NULL; > } > adjusts the wrong pointers because of the subsequent > > return &vmx_function_table; > Hence I guess the below fix is needed. > > Jan > > VMX: adjust correct table when there''s no posted interrupt support > > The caller of start_vmx() will overwrite hvm_funcs, so there''s no point > in adjusting that table in start_vmx(). > > Signed-off-by: Jan Beulich <jbeulich@suse.com> > > --- a/xen/arch/x86/hvm/vmx/vmx.c > +++ b/xen/arch/x86/hvm/vmx/vmx.c > @@ -1587,8 +1587,8 @@ struct hvm_function_table * __init start > alloc_direct_apic_vector(&posted_intr_vector, > event_check_interrupt); > else > { > - hvm_funcs.deliver_posted_intr = NULL; > - hvm_funcs.sync_pir_to_irr = NULL; > + vmx_function_table.deliver_posted_intr = NULL; > + vmx_function_table.sync_pir_to_irr = NULL; > } > > setup_vmcs_dump(); >Acked. Best regards, Yang