Skip to content
Snippets Groups Projects
  1. Feb 02, 2022
    • John Snow's avatar
      python/machine: raise VMLaunchFailure exception from launch() · 50465f94
      John Snow authored
      
      This allows us to pack in some extra information about the failure,
      which guarantees that if the caller did not *intentionally* cause a
      failure (by capturing this Exception), some pretty good clues will be
      printed at the bottom of the traceback information.
      
      This will help make failures in the event of a non-negative return code
      more obvious when they go unhandled; the current behavior in
      _post_shutdown() is to print a warning message only in the event of
      signal-based terminations (for negative return codes).
      
      (Note: In Python, catching BaseException instead of Exception catches a
      broader array of Exception events, including SystemExit and
      KeyboardInterrupt. We do not want to "wrap" such exceptions as a
      VMLaunchFailure, because that will 'downgrade' the exception from a
      BaseException to a regular Exception. We do, however, want to perform
      cleanup in either case, so catch on the broadest scope and
      wrap-and-re-raise only in the more targeted scope.)
      
      Signed-off-by: default avatarJohn Snow <jsnow@redhat.com>
      Reviewed-by: default avatarHanna Reitz <hreitz@redhat.com>
      Reviewed-by: default avatarKevin Wolf <kwolf@redhat.com>
      Message-id: 20220201041134.1237016-3-jsnow@redhat.com
      Signed-off-by: default avatarJohn Snow <jsnow@redhat.com>
      50465f94
    • John Snow's avatar
      python/aqmp: Fix negotiation with pre-"oob" QEMU · fa73e6e4
      John Snow authored
      
      QEMU versions prior to the "oob" capability *also* can't accept the
      "enable" keyword argument at all. Fix the handshake process with older
      QEMU versions.
      
      Signed-off-by: default avatarJohn Snow <jsnow@redhat.com>
      Reviewed-by: default avatarHanna Reitz <hreitz@redhat.com>
      Reviewed-by: default avatarKevin Wolf <kwolf@redhat.com>
      Message-id: 20220201041134.1237016-2-jsnow@redhat.com
      Signed-off-by: default avatarJohn Snow <jsnow@redhat.com>
      fa73e6e4
  2. Feb 01, 2022
  3. Jan 31, 2022
    • Peter Maydell's avatar
      Merge remote-tracking branch 'remotes/bsdimp/tags/bsd-user-arm-2022q1-pull-request' into staging · 5cbe6411
      Peter Maydell authored
      bsd-user: upstream signal implementation
      
      Upstream the bsd-user fork signal implementation, for the most part.  This
      series of commits represents nearly all of the infrastructure that surround
      signals, except the actual system call glue (that was also reworked in the
      fork and needs its own series). In addition, this adds the sigsegv and sigbus
      code to arm. Even in the fork, we don't have good x86 signal implementation,
      so there's little to upstream for that at the moment.
      
      bsd-user's signal implementation is similar to linux-user's. The full context
      can be found in the bsd-user's fork's 'blitz branch' at
      https://github.com/qemu-bsd-user/qemu-bsd-user/tree/blitz which shows how these
      are used to implement various system calls. Since this was built from
      linux-user's stack stuff, evolved for BSD with the passage of a few years, it
      no-doubt missed some bug fixes from linux-user (though nothing obvious stood out
      in the quick comparison I made). After the first round of reviews, many of these
      improvements have been incorporated.
      
      Patchew history: https://patchew.org/QEMU/20220125012947.14974-1-imp@bsdimp.com/
      
      
      
      # gpg: Signature made Mon 31 Jan 2022 19:55:51 GMT
      # gpg:                using RSA key 2035F894B00AA3CF7CCDE1B76C1CD1287DB01100
      # gpg: Good signature from "Warner Losh <wlosh@netflix.com>" [unknown]
      # gpg:                 aka "Warner Losh <imp@bsdimp.com>" [unknown]
      # gpg:                 aka "Warner Losh <imp@freebsd.org>" [unknown]
      # gpg:                 aka "Warner Losh <imp@village.org>" [unknown]
      # gpg:                 aka "Warner Losh <wlosh@bsdimp.com>" [unknown]
      # gpg: WARNING: This key is not certified with a trusted signature!
      # gpg:          There is no indication that the signature belongs to the owner.
      # Primary key fingerprint: 2035 F894 B00A A3CF 7CCD  E1B7 6C1C D128 7DB0 1100
      
      * remotes/bsdimp/tags/bsd-user-arm-2022q1-pull-request: (40 commits)
        bsd-user/freebsd/target_os_ucontext.h: Prefer env as arg name for CPUArchState args
        bsd-user: Rename arg name for target_cpu_reset to env
        MAINTAINERS: Add tests/vm/*bsd to the list to get reviews on
        bsd-user/signal.c: do_sigaltstack
        bsd-user/signal.c: implement do_sigaction
        bsd-user/signal.c: implement do_sigreturn
        bsd-user/signal.c: process_pending_signals
        bsd-user/signal.c: tswap_siginfo
        bsd-user/signal.c: handle_pending_signal
        bsd-user/signal.c: setup_frame
        bsd-user/signal.c: sigset manipulation routines.
        bsd-user/signal.c: Fill in queue_signal
        bsd-user/signal.c: Implement dump_core_and_abort
        bsd-user/strace.c: print_taken_signal
        bsd-user/signal.c: Implement host_signal_handler
        bsd-user/signal.c: Implement rewind_if_in_safe_syscall
        bsd-user/signal.c: host_to_target_siginfo_noswap
        bsd-user: Add trace events for bsd-user
        bsd-user: Add host signals to the build
        bsd-user/host/x86_64/host-signal.h: Implement host_signal_*
        ...
      
      Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
      5cbe6411
    • Peter Maydell's avatar
      Merge remote-tracking branch 'remotes/legoater/tags/pull-ppc-20220130' into staging · 804b30d2
      Peter Maydell authored
      
      ppc 7.0 queue:
      
      * Exception and TLB fixes for the 405 CPU (Fabiano and Cedric)
      * spapr fixes (Alexey and Daniel)
      * PowerNV PHB3/4 fixes (Frederic and Daniel)
      * PowerNV XIVE improvements (Cedric)
      * 603 CPUs fixes (Christophe)
      * Book-E exception fixes (Vitaly)
      * Misc compile issues  (Philippe and Fabiano)
      * Exception model rework for the BookS CPUs (Fabiano)
      * Exception model rework for the 74xx CPUs (Fabiano)
      * Removal of 602 CPUs
      
      # gpg: Signature made Sun 30 Jan 2022 17:42:23 GMT
      # gpg:                using RSA key A0F66548F04895EBFE6B0B6051A343C7CFFBECA1
      # gpg: Good signature from "Cédric Le Goater <clg@kaod.org>" [undefined]
      # gpg: WARNING: This key is not certified with a trusted signature!
      # gpg:          There is no indication that the signature belongs to the owner.
      # Primary key fingerprint: A0F6 6548 F048 95EB FE6B  0B60 51A3 43C7 CFFB ECA1
      
      * remotes/legoater/tags/pull-ppc-20220130: (41 commits)
        target/ppc: Remove support for the PowerPC 602 CPU
        target/ppc: 74xx: Set SRRs directly in exception code
        target/ppc: 74xx: System Reset interrupt cleanup
        target/ppc: 74xx: System Call exception cleanup
        target/ppc: 74xx: Program exception cleanup
        target/ppc: 74xx: External interrupt cleanup
        target/ppc: 74xx: Machine Check exception cleanup
        target/ppc: Simplify powerpc_excp_74xx
        target/ppc: Introduce powerpc_excp_74xx
        target/ppc: books: Program exception cleanup
        target/ppc: books: External interrupt cleanup
        target/ppc: books: Machine Check exception cleanup
        target/ppc: Simplify powerpc_excp_books
        target/ppc: Introduce powerpc_excp_books
        target/ppc: 405: Watchdog timer exception cleanup
        target/ppc: 405: Program exception cleanup
        target/ppc: 405: Instruction storage interrupt cleanup
        target/ppc: 405: Data Storage exception cleanup
        target/ppc: 405: Debug exception cleanup
        target/ppc: 405: Alignment exception cleanup
        ...
      
      Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
      804b30d2
Loading