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

[qemu-xen staging] Merge remote-tracking branch 'remotes/philmd-gitlab/tags/python-next-20200714' into staging



commit 673205379fb499d2b72f2985b47ec7114282f5fe
Merge: 3a9163af4e3dd61795a35d47b702e302f98f81d6 
84dcdf0887cdaaba7300442482c99e5064865a2d
Author:     Peter Maydell <peter.maydell@xxxxxxxxxx>
AuthorDate: Wed Jul 15 13:04:27 2020 +0100
Commit:     Peter Maydell <peter.maydell@xxxxxxxxxx>
CommitDate: Wed Jul 15 13:04:27 2020 +0100

    Merge remote-tracking branch 
'remotes/philmd-gitlab/tags/python-next-20200714' into staging
    
    Python patches for 5.1
    
    - Reduce race conditions on QEMUMachine::shutdown()
    
     1. Remove the "bare except" pattern in the existing shutdown code,
        which can mask problems and make debugging difficult.
     2. Ensure that post-shutdown cleanup is always performed, even when
        graceful termination fails.
     3. Unify cleanup paths such that no matter how the VM is terminated,
        the same functions and steps are always taken to reset the object
        state.
     4. Rewrite shutdown() such that any error encountered when attempting
        a graceful shutdown will be raised as an AbnormalShutdown exception.
        The pythonic idiom is to allow the caller to decide if this is a
        problem or not.
    
    - Modify part of the python/qemu library to comply with:
    
      . mypy --strict
      . pylint
      . flake8
    
    - Script for the TCG Continuous Benchmarking project that uses
      callgrind to dissect QEMU execution into three main phases:
    
      . code generation
      . JIT execution
      . helpers execution
    
    CI jobs results:
    . https://cirrus-ci.com/build/5421349961203712
    . https://gitlab.com/philmd/qemu/-/pipelines/166556001
    . https://travis-ci.org/github/philmd/qemu/builds/708102347
    
    # gpg: Signature made Tue 14 Jul 2020 21:40:05 BST
    # gpg:                using RSA key FAABE75E12917221DCFD6BB2E3E32C2CDEADC0DE
    # gpg: Good signature from "Philippe Mathieu-Daudé (F4BUG) 
<f4bug@xxxxxxxxx>" [full]
    # Primary key fingerprint: FAAB E75E 1291 7221 DCFD  6BB2 E3E3 2C2C DEAD 
C0DE
    
    * remotes/philmd-gitlab/tags/python-next-20200714:
      python/qmp.py: add QMPProtocolError
      python/qmp.py: add casts to JSON deserialization
      python/qmp.py: Do not return None from cmd_obj
      python/qmp.py: re-absorb MonitorResponseError
      iotests.py: use qemu.qmp type aliases
      python/qmp.py: Define common types
      python/machine.py: change default wait timeout to 3 seconds
      python/machine.py: re-add sigkill warning suppression
      python/machine.py: split shutdown into hard and soft flavors
      tests/acceptance: Don't test reboot on cubieboard
      tests/acceptance: wait() instead of shutdown() where appropriate
      python/machine.py: Make wait() call shutdown()
      python/machine.py: Add a configurable timeout to shutdown()
      python/machine.py: Prohibit multiple shutdown() calls
      python/machine.py: Perform early cleanup for wait() calls, too
      python/machine.py: Add _early_cleanup hook
      python/machine.py: Close QMP socket in cleanup
      python/machine.py: consolidate _post_shutdown()
      scripts/performance: Add dissect.py script
    
    Signed-off-by: Peter Maydell <peter.maydell@xxxxxxxxxx>

 python/qemu/machine.py                   | 174 +++++++++++++++++++++++--------
 python/qemu/qmp.py                       |  67 +++++++++---
 scripts/performance/dissect.py           | 166 +++++++++++++++++++++++++++++
 scripts/render_block_graph.py            |   7 +-
 tests/acceptance/boot_linux_console.py   |  14 ++-
 tests/acceptance/linux_ssh_mips_malta.py |   2 +
 tests/qemu-iotests/iotests.py            |   9 +-
 7 files changed, 368 insertions(+), 71 deletions(-)

--
generated by git-patchbot for /home/xen/git/qemu-xen.git#staging



 


Rackspace

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