[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[xen-unstable test] 109245: regressions - FAIL



flight 109245 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/109245/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-xl-qemuu-winxpsp3-vcpus1 17 guest-start/win.repeat fail REGR. 
vs. 109136
 test-amd64-i386-xl-qemuu-winxpsp3 16 guest-stop          fail REGR. vs. 109165

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-win7-amd64 16 guest-stop             fail like 109091
 test-amd64-i386-xl-qemut-win7-amd64 16 guest-stop             fail like 109112
 test-amd64-i386-xl-qemut-winxpsp3 16 guest-stop               fail like 109112
 test-armhf-armhf-libvirt-xsm 13 saverestore-support-check    fail  like 109165
 test-amd64-amd64-xl-qemut-win7-amd64 15 guest-localmigrate/x10 fail like 109165
 test-amd64-amd64-xl-qemuu-win7-amd64 16 guest-stop            fail like 109165
 test-armhf-armhf-libvirt-raw 12 saverestore-support-check    fail  like 109165
 test-armhf-armhf-libvirt     13 saverestore-support-check    fail  like 109165
 test-armhf-armhf-xl-rtds     15 guest-start/debian.repeat    fail  like 109165
 test-amd64-amd64-xl-rtds      9 debian-install               fail  like 109165
 test-amd64-i386-libvirt      12 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     12 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  12 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 12 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-multivcpu 12 migrate-support-check        fail  never pass
 test-arm64-arm64-xl-multivcpu 13 saverestore-support-check    fail  never pass
 test-arm64-arm64-libvirt     12 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt     13 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      12 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      13 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          12 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          13 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  12 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  13 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 10 migrate-support-check 
fail never pass
 test-armhf-armhf-xl-arndale  12 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  13 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-rtds     12 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-rtds     13 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 10 migrate-support-check 
fail never pass
 test-arm64-arm64-libvirt-qcow2 11 migrate-support-check        fail never pass
 test-arm64-arm64-libvirt-qcow2 12 saverestore-support-check    fail never pass
 test-amd64-amd64-libvirt-vhd 11 migrate-support-check        fail   never pass
 test-amd64-amd64-qemuu-nested-amd 16 debian-hvm-install/l1/l2  fail never pass
 test-armhf-armhf-xl          12 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-cubietruck 12 migrate-support-check        fail never pass
 test-armhf-armhf-xl          13 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  12 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-cubietruck 13 saverestore-support-check    fail never pass
 test-armhf-armhf-xl-credit2  13 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-xsm 12 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-multivcpu 12 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 13 saverestore-support-check    fail  never pass
 test-armhf-armhf-libvirt-raw 11 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     12 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     13 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 12 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 13 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-xsm      12 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-xsm      13 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     12 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      11 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      12 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  cbcaccb5e991155a4ae85a032e990614c3dc6960
baseline version:
 xen                  8839be5c1fe339a1310b4e05e88c5a0230b7959d

Last test of basis   109165  2017-05-08 07:17:46 Z    2 days
Failing since        109186  2017-05-08 19:20:10 Z    1 days    4 attempts
Testing same since   109245  2017-05-10 04:18:56 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
  George Dunlap <george.dunlap@xxxxxxxxxx>
  Ian Jackson <ian.jackson@xxxxxxxxxxxxx>
  Jan Beulich <jbeulich@xxxxxxxx>
  Julien Grall <julien.grall@xxxxxxx>
  Kevin Tian <kevin.tian@xxxxxxxxx>
  Mark Rutland <mark.rutland@xxxxxxx>
  Mohit Gambhir <mohit.gambhir@xxxxxxxxxx>
  Razvan Cojocaru <rcojocaru@xxxxxxxxxxxxxxx>
  Robin Lee <robinlee.sysu@xxxxxxxxx>
  Tamas K Lengyel <tamas@xxxxxxxxxxxxx>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-armhf-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-oldkern                                          pass    
 build-i386-oldkern                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 build-amd64-rumprun                                          pass    
 build-i386-rumprun                                           pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64-xsm                pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64-xsm                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-xsm                pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-xsm                 pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-armhf-armhf-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-armhf-armhf-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvh-amd                                  pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-rumprun-amd64                               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-i386-xl-qemuu-win7-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-i386-rumprun-i386                                 pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvh-intel                                pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-libvirt                                     pass    
 test-arm64-arm64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-arm64-arm64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-pygrub                                      pass    
 test-arm64-arm64-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-arm64-arm64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-amd64-i386-xl-qemut-winxpsp3-vcpus1                     pass    
 test-amd64-i386-xl-qemuu-winxpsp3-vcpus1                     fail    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-amd64-xl-qemut-winxpsp3                           pass    
 test-amd64-i386-xl-qemut-winxpsp3                            fail    
 test-amd64-amd64-xl-qemuu-winxpsp3                           pass    
 test-amd64-i386-xl-qemuu-winxpsp3                            fail    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

------------------------------------------------------------
commit cbcaccb5e991155a4ae85a032e990614c3dc6960
Author: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
Date:   Fri May 5 17:38:19 2017 +0100

    x86/pv: Align %rsp before pushing the failsafe stack frame
    
    Architecturally, all 64bit stacks are aligned on a 16 byte boundary before 
an
    exception frame is pushed.  The failsafe frame should not special in this
    regard.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
    Reviewed-by: Jan Beulich <jbeulich@xxxxxxxx>
    Release-acked-by: Julien Grall <julien.grall@xxxxxxx>

commit 55ab172a1f286742d918947ecb9b257ce31cc253
Author: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
Date:   Fri May 5 17:38:19 2017 +0100

    x86/pv: Fix bugs with the handling of int80_bounce
    
    Testing has revealed two issues:
    
     1) Passing a NULL handle to set_trap_table() is intended to flush the 
entire
        table.  The 64bit guest case (and 32bit guest on 32bit Xen, when it
        existed) called init_int80_direct_trap() to reset int80_bounce, but c/s
        cda335c279 which introduced the 32bit guest on 64bit Xen support omitted
        this step.  Previously therefore, it was impossible for a 32bit guest to
        reset its registered int80_bounce details.
    
     2) init_int80_direct_trap() doesn't honour the guests request to have
        interrupts disabled on entry.  PVops Linux requests that interrupts are
        disabled, but Xen currently leaves them enabled when following the int80
        fastpath.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
    Reviewed-by: Jan Beulich <jbeulich@xxxxxxxx>
    Release-acked-by: Julien Grall <julien.grall@xxxxxxx>

commit baf2950213e6a50801940643e2549a5baa21ad71
Author: Julien Grall <julien.grall@xxxxxxx>
Date:   Fri May 5 15:30:36 2017 +0100

    xen/arm: Survive unknown traps from guests
    
    Currently we crash Xen if we see an ESR_EL2.EC value we don't recognise.
    As configurable disables/enables are added to the architecture
    (controlled by RES1/RESO bits respectively), with associated synchronous
    exceptions, it may be possible for a guest to trigger exceptions with
    classes that we don't recognise.
    
    While we can't service these exceptions in a manner useful to the guest,
    we can avoid bringing down the host. Per ARM DDI 0487A.k_iss10775, page
    D7-1937, EC values within the range 0x00 - 0x2c are reserved for future
    use with synchronous exceptions, and EC within the range 0x2d - 0x3f may
    be used for either synchronous or asynchronous exceptions.
    
    The patch makes Xen handle any unknown EC by injecting an UNDEFINED
    exception into the guest, with a corresponding (ratelimited) warning in
    the log.
    
    This patch is based on Linux commit f050fe7a9164 "arm: KVM: Survive unknown
    traps from the guest".
    
    Signed-off-by: Julien Grall <julien.grall@xxxxxxx>
    Acked-by: Mark Rutland <mark.rutland@xxxxxxx>
    Reviewed-by: Stefano Stabellini <sstabellini@xxxxxxxxxx>

commit 5a0ed9a09ebb32b620d9217875bb5206d5ccf4d7
Author: Julien Grall <julien.grall@xxxxxxx>
Date:   Fri May 5 15:30:35 2017 +0100

    xen/arm: do_trap_hypervisor: Separate hypervisor and guest traps
    
    The function do_trap_hypervisor is currently handling both trap coming
    from the hypervisor and the guest. This makes difficult to get specific
    behavior when a trap is coming from either the guest or the hypervisor.
    
    Split the function into two parts:
        - do_trap_guest_sync to handle guest traps
        - do_trap_hyp_sync to handle hypervisor traps
    
    On AArch32, the Hyp Trap Exception provides the standard mechanism for
    trapping Guest OS functions to the hypervisor (see B1.14.1 in ARM DDI
    0406C.c). It cannot be generated when generated when the processor is in
    Hyp Mode, instead other exception will be used. So it is fine to replace
    the call to do_trap_hypervisor by do_trap_guest_sync.
    
    For AArch64, there are two distincts exception depending whether the
    exception was taken from the current level (hypervisor) or lower level
    (guest).
    
    Note that the unknown traps from guests will lead to panic Xen. This is
    already behavior and is left unchanged for simplicy. A follow-up patch
    will address that.
    
    Signed-off-by: Julien Grall <julien.grall@xxxxxxx>
    Reviewed-by: Stefano Stabellini <sstabellini@xxxxxxxxxx>

commit 1f92dd7e8867f605fb02b1e67ecf0de389a6c816
Author: Julien Grall <julien.grall@xxxxxxx>
Date:   Fri May 5 15:30:34 2017 +0100

    xen/arm: arm32: Rename the trap to the correct name
    
    Per Table B1-3 in ARM DDI 0406C.c, the vector 0x8 for hyp is called
    "Hypervisor Call".
    
    Signed-off-by: Julien Grall <julien.grall@xxxxxxx>
    Reviewed-by: Stefano Stabellini <sstabellini@xxxxxxxxxx>

commit 933f966bcdf4f4255b432071fc12c9ee2efb05ef
Author: Jan Beulich <jbeulich@xxxxxxxx>
Date:   Mon May 8 17:48:32 2017 +0200

    x86/mm: add temporary debugging code to get_page_from_gfn_p2m()
    
    See the code comment.
    
    Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>
    Acked-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
    Acked-by: George Dunlap <george.dunlap@xxxxxxxxxx>
    Release-acked-by: Julien Grall <julien.grall@xxxxxxx>

commit 03350f1ce7398a5b2d54802efe21659bd8d03772
Author: Robin Lee <robinlee.sysu@xxxxxxxxx>
Date:   Sat May 6 03:02:32 2017 +0800

    libxl: u.hvm.usbdevice_list is checked for emptiness
    
    Currently usbdevice_list is only checked for nullity. But the OCaml
    binding will convert empty list to a pointer to NULL, instead of a
    NULL pointer. That means the OCaml binding will fail to disable USB.
    
    This patch will check emptiness of usbdevice_list. And NULL is still a
    valid empty list.
    
    Signed-off-by: Robin Lee <robinlee.sysu@xxxxxxxxx>
    Acked-by: Ian Jackson <ian.jackson@xxxxxxxxxxxxx>
    Release-acked-by: Julien Grall <julien.grall@xxxxxxx>

commit a0a9095432f6f8b7c83e779dad5debc81c552583
Author: Jan Beulich <jbeulich@xxxxxxxx>
Date:   Mon May 8 14:56:14 2017 +0200

    x86: correct boot time page table setup
    
    While using alloc_domheap_pages() and assuming the allocated memory is
    directly accessible is okay at boot time (as we run on the idle page
    tables there), memory hotplug code too assumes it can access the
    resulting page tables without using map_domain_page() or alike, and
    hence we need to obtain memory suitable for ordinary page table use
    here.
    
    Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>
    Reviewed-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
    Release-acked-by: Julien Grall <julien.grall@xxxxxxx>

commit 1c5e242e6d6e51fe6ec3553299ec7efc48938c56
Author: Jan Beulich <jbeulich@xxxxxxxx>
Date:   Mon May 8 14:55:20 2017 +0200

    x86: correct create_bounce_frame
    
    Commit d9b7ef209a7 ("x86: drop failsafe callback invocation from
    assembly") didn't go quite far enough with the cleanup it did: The
    changed maximum frame size should also have been reflected in the early
    address range check (which has now been pointed out to have been wrong
    anyway, using 60 instead of 0x60), and it should have updated the
    comment ahead of the function.
    
    Also adjust the lower bound - all is fine (for our purposes) if the
    initial guest kernel stack pointer points right at the hypervisor base
    address, as only memory _below_ that address is going to be written.
    
    Additionally limit the number of times %rsi is being adjusted to what
    is really needed.
    
    Finally move exception fixup code into the designated .fixup section
    and macroize the stores to guest stack.
    
    Reported-by: Jann Horn <jannh@xxxxxxxxxx>
    Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>
    Reviewed-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
    Release-acked-by: Julien grall <julien.grall@xxxxxxx>

commit 461f0482033b09ade2f3e38c8c33f1c15bc8defc
Author: Razvan Cojocaru <rcojocaru@xxxxxxxxxxxxxxx>
Date:   Mon May 8 14:54:00 2017 +0200

    x86/vm_event: fix race between __context_switch() and vm_event_resume()
    
    The introspection agent can reply to a vm_event faster than
    vmx_vmexit_handler() can complete in some cases, where it is then
    not safe for vm_event_set_registers() to modify v->arch.user_regs.
    In the test scenario, we were stepping over an INT3 breakpoint by
    setting RIP += 1. The quick reply tended to complete before the VCPU
    triggering the introspection event had properly paused and been
    descheduled. If the reply occurs before __context_switch() happens,
    __context_switch() clobbers the reply by overwriting
    v->arch.user_regs from the stack. If we don't pass through
    __context_switch() (due to switching to the idle vCPU), reply data
    wouldn't be picked up when switching back straight to the original
    vCPU.
    
    This patch ensures that vm_event_resume() code only sets per-VCPU
    data to be used for the actual setting of registers later in
    hvm_do_resume() (similar to the model used to control setting of CRs
    and MSRs).
    
    The patch additionally removes the sync_vcpu_execstate(v) call from
    vm_event_resume(), which is no longer necessary, which removes the
    associated broadcast TLB flush (read: performance improvement).
    
    Signed-off-by: Razvan Cojocaru <rcojocaru@xxxxxxxxxxxxxxx>
    Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
    Reviewed-by: Jan Beulich <jbeulich@xxxxxxxx>
    Acked-by: Tamas K Lengyel <tamas@xxxxxxxxxxxxx>
    Release-acked-by: Julien Grall <julien.grall@xxxxxxx>

commit 1366a0e76db67953368dc4ca85bcbb28d0f3003f
Author: Razvan Cojocaru <rcojocaru@xxxxxxxxxxxxxxx>
Date:   Mon May 8 14:52:31 2017 +0200

    x86/vm_event: add hvm/vm_event.{h,c}
    
    Created arch/x86/hvm/vm_event.c and include/asm-x86/hvm/vm_event.h,
    where HVM-specific vm_event-related code will live. This cleans up
    hvm_do_resume() and ensures that the vm_event maintainers are
    responsible for changes to that code.
    
    Signed-off-by: Razvan Cojocaru <rcojocaru@xxxxxxxxxxxxxxx>
    Acked-by: Tamas K Lengyel <tamas@xxxxxxxxxxxxx>
    Acked-by: Jan Beulich <jbeulich@xxxxxxxx>
    Release-acked-by: Julien Grall <julien.grall@xxxxxxx>

commit 8bf68dca65e2d61f4dfc6715cca51ad3dd5aadf1
Author: Mohit Gambhir <mohit.gambhir@xxxxxxxxxx>
Date:   Mon May 8 13:37:17 2017 +0200

    x86/vpmu_intel: fix hypervisor crash by masking PC bit in MSR_P6_EVNTSEL
    
    Setting Pin Control (PC) bit (19) in MSR_P6_EVNTSEL results in a General
    Protection Fault and thus results in a hypervisor crash. This behavior has
    been observed on two generations of Intel processors namely, Haswell and
    Broadwell. Other Intel processor generations were not tested. However, it
    does seem to be a possible erratum that hasn't yet been confirmed by Intel.
    
    To fix the problem this patch masks PC bit and returns an error in
    case any guest tries to write to it on any Intel processor. In addition
    to the fact that setting this bit crashes the hypervisor on Haswell and
    Broadwell, the PC flag bit toggles a hardware pin on the physical CPU
    every time the programmed event occurs and the hardware behavior in
    response to the toggle is undefined in the SDM, which makes this bit
    unsafe to be used by guests and hence should be masked on all machines.
    
    Signed-off-by: Mohit Gambhir <mohit.gambhir@xxxxxxxxxx>
    Reviewed-by: Jan Beulich <jbeulich@xxxxxxxx>
    Acked-by: Kevin Tian <kevin.tian@xxxxxxxxx>
    Release-acked-by: Julien Grall <julien.grall@xxxxxxx>

commit d595e126c96976d056d7877e4319b3f2f3d246b1
Author: Jan Beulich <jbeulich@xxxxxxxx>
Date:   Mon May 8 13:36:28 2017 +0200

    VMX: constrain vmx_intr_assist() debugging code to debug builds
    
    This is because that code, added by commit 997382b771 ("y86/vmx: dump
    PIR and vIRR before ASSERT()"), was meant to be removed by the time we
    finalize 4.9, but the root cause of the ASSERT() wrongly(?) triggering
    still wasn't found.
    
    Take the opportunity and also correct the format specifiers, which I
    had got wrong when editing said change while committing.
    
    Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>
    Acked-by: Kevin Tian <kevin.tian@xxxxxxxxx>
    Release-Acked-by: Julien Grall <julien.grall@xxxxxxx>
(qemu changes not included)

_______________________________________________
osstest-output mailing list
osstest-output@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/cgi-bin/mailman/listinfo/osstest-output

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.