1. 20 10月, 2017 8 次提交
    • D
      s390x/tcg: turn INTERRUPT_EXT into a mask · 6482b0ff
      David Hildenbrand 提交于
      External interrupts are currently all handled like floating external
      interrupts, they are queued. Let's prepare for a split of floating
      and local interrupts by turning INTERRUPT_EXT into a mask.
      
      While we can have various floating external interrupts of one kind, there
      is usually only one (or a fixed number) of the local external interrupts.
      
      So turn INTERRUPT_EXT into a mask and properly indicate the kind of
      external interrupt. Floating interrupts will have to moved out of
      one CPU instance later once we have SMP support.
      
      The only floating external interrupts used right now are SERVICE
      interrupts, so let's use that name. Following patches will clean up
      SERVICE interrupt injection.
      
      This get's rid of the ugly special handling for cpu timer and clock
      comparator interrupts. And we really only store the parameters as
      defined by the PoP.
      Reviewed-by: NRichard Henderson <richard.henderson@linaro.org>
      Signed-off-by: NDavid Hildenbrand <david@redhat.com>
      Message-Id: <20170928203708.9376-2-david@redhat.com>
      Signed-off-by: NCornelia Huck <cohuck@redhat.com>
      6482b0ff
    • H
      s390x/css: be more consistent if broken beyond repair · 9ea63c05
      Halil Pasic 提交于
      Calling do_subchannel_work with no function control flags set in SCSW is
      a programming error. Currently we handle this differently in
      do_subchannel_work_virtual and do_subchannel_work_passthrough. Let's be
      consistent and guard with a common assert against this programming error.
      Signed-off-by: NHalil Pasic <pasic@linux.vnet.ibm.com>
      Message-Id: <20171004154144.88995-2-pasic@linux.vnet.ibm.com>
      Reviewed-by: NDong Jia Shi <bjsdjshi@linux.vnet.ibm.com>
      Reviewed-by: NThomas Huth <thuth@redhat.com>
      Signed-off-by: NCornelia Huck <cohuck@redhat.com>
      9ea63c05
    • M
      S390: use g_new() family of functions · 96f64aa8
      Marc-André Lureau 提交于
      Signed-off-by: NMarc-André Lureau <marcandre.lureau@redhat.com>
      Signed-off-by: NPhilippe Mathieu-Daudé <f4bug@amsat.org>
      [PMD: more changes in hw/s390x/css.c, added target/s390x/cpu_models.c]
      Message-Id: <20171006235023.11952-27-f4bug@amsat.org>
      Signed-off-by: NCornelia Huck <cohuck@redhat.com>
      96f64aa8
    • P
      Merge remote-tracking branch 'remotes/stefanberger/tags/pull-tpm-2017-10-19-1' into staging · e67277f8
      Peter Maydell 提交于
      Merge tpm 2017/10/19 v1
      
      # gpg: Signature made Thu 19 Oct 2017 16:42:39 BST
      # gpg:                using RSA key 0x75AD65802A0B4211
      # gpg: Good signature from "Stefan Berger <stefanb@linux.vnet.ibm.com>"
      # 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: B818 B9CA DF90 89C2 D5CE  C66B 75AD 6580 2A0B 4211
      
      * remotes/stefanberger/tags/pull-tpm-2017-10-19-1: (21 commits)
        tpm: move recv_data_callback to TPM interface
        tpm: add a QOM TPM interface
        tpm-tis: fold TPMTISEmuState in TPMState
        tpm-tis: remove tpm_tis.h header
        tpm-tis: move TPMState to TIS header
        tpm: remove locty_data from TPMState
        tpm-emulator: fix error handling
        tpm: add TPMBackendCmd to hold the request state
        tpm: remove locty argument from receive_cb
        tpm: remove needless cast
        tpm: remove unused TPMBackendCmd
        tpm: remove configure_tpm() hop
        tpm: remove init() class method
        tpm: remove TPMDriverOps
        tpm: move TPMSizedBuffer to tpm_tis.h
        tpm: remove tpm_register_driver()
        tpm: replace tpm_get_backend_driver() to drop be_drivers
        tpm: lookup tpm backend class in tpm_driver_find_by_type()
        tpm: make tpm_get_backend_driver() static
        tpm-tis: remove RAISE_STS_IRQ
        ...
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      e67277f8
    • P
      Merge remote-tracking branch 'remotes/mcayland/tags/qemu-openbios-signed' into staging · 840e0691
      Peter Maydell 提交于
      Update OpenBIOS images
      
      # gpg: Signature made Thu 19 Oct 2017 20:08:44 BST
      # gpg:                using RSA key 0x5BC2C56FAE0F321F
      # gpg: Good signature from "Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>"
      # Primary key fingerprint: CC62 1AB9 8E82 200D 915C  C9C4 5BC2 C56F AE0F 321F
      
      * remotes/mcayland/tags/qemu-openbios-signed:
        Update OpenBIOS images to 83818bd built from submodule.
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      840e0691
    • M
    • P
      Merge remote-tracking branch 'remotes/mcayland/tags/qemu-sparc-signed' into staging · 063833a6
      Peter Maydell 提交于
      qemu-sparc update
      
      # gpg: Signature made Thu 19 Oct 2017 07:50:16 BST
      # gpg:                using RSA key 0x5BC2C56FAE0F321F
      # gpg: Good signature from "Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>"
      # Primary key fingerprint: CC62 1AB9 8E82 200D 915C  C9C4 5BC2 C56F AE0F 321F
      
      * remotes/mcayland/tags/qemu-sparc-signed:
        sun4u: fix assert when adding NICs which aren't the in-built model
        sun4u: update PCI topology to include simba PCI bridges
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      063833a6
    • P
      Merge remote-tracking branch... · d634fc04
      Peter Maydell 提交于
      Merge remote-tracking branch 'remotes/kraxel/tags/seabios-1.11-prerelease-20171019-pull-request' into staging
      
      seabios: update to 1.11 prerelease
      
      # gpg: Signature made Thu 19 Oct 2017 09:19:33 BST
      # gpg:                using RSA key 0x4CB6D8EED3E87138
      # gpg: Good signature from "Gerd Hoffmann (work) <kraxel@redhat.com>"
      # gpg:                 aka "Gerd Hoffmann <gerd@kraxel.org>"
      # gpg:                 aka "Gerd Hoffmann (private) <kraxel@gmail.com>"
      # Primary key fingerprint: A032 8CFF B93A 17A7 9901  FE7D 4CB6 D8EE D3E8 7138
      
      * remotes/kraxel/tags/seabios-1.11-prerelease-20171019-pull-request:
        seabios: update to 1.11 prerelease
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      d634fc04
  2. 19 10月, 2017 29 次提交
  3. 18 10月, 2017 3 次提交
    • M
      scsi: reject configurations with logical block size > physical block size · 3da023b5
      Mark Kanda 提交于
      Logical block size of a SCSI disk should never be larger than
      physical block size. From an ATA/SCSI perspective, it makes no sense
      to have the logical block size greater than the physical block size,
      and it cannot even be effectively expressed in the command set. The
      whole point of adding the physical block size to the ATA/SCSI command
      set was to communicate a desire for a larger block size (than logical),
      while maintaining backwards compatibility with legacy 512 byte block
      size.
      
      When setting logical_block_size > physical_block_size, QEMU cannot express
      it in READ CAPACITY(16) output, and all it can do is set the physical
      block exponent to 0 (i.e. logical_block_size == physical_block_size).
      Reporting the error properly, however, is better.
      Signed-off-by: NMark Kanda <mark.kanda@oracle.com>
      Reviewed-by: NKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
      Reviewed-by: NMartin K. Petersen <martin.petersen@oracle.com>
      Message-Id: <1508185024-5840-1-git-send-email-mark.kanda@oracle.com>
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      3da023b5
    • M
      qdev: defer DEVICE_DEL event until instance_finalize() · f7b879e0
      Michael Roth 提交于
      DEVICE_DEL is currently emitted when a Device is unparented, as
      opposed to when it is finalized. The main design motivation for this
      seems to be that after unparent()/unrealize(), the Device is no
      longer visible to the guest, and thus the operation is complete
      from the perspective of management.
      
      However, there are cases where remaining host-side cleanup is also
      pertinent to management. The is generally handled by treating these
      resources as aspects of the "backend", which can be managed via
      separate interfaces/events, such as blockdev_add/del, netdev_add/del,
      object_add/del, etc, but some devices do not have this level of
      compartmentalization, namely vfio-pci, and possibly to lend themselves
      well to it.
      
      In the case of vfio-pci, the "backend" cleanup happens as part of
      the finalization of the vfio-pci device itself, in particular the
      cleanup of the VFIO group FD. Failing to wait for this cleanup can
      result in tools like libvirt attempting to rebind the device to
      the host while it's still being used by VFIO, which can result in
      host crashes or other misbehavior depending on the host driver.
      
      Deferring DEVICE_DEL still affords us the ability to manage backends
      explicitly, while also addressing cases like vfio-pci's, so we
      implement that approach here.
      
      An alternative proposal involving having VFIO emit a separate event
      to denote completion of host-side cleanup was discussed, but the
      prevailing opinion seems to be that it is not worth the added
      complexity, and leaves the issue open for other Device implementations
      to solve in the future.
      Signed-off-by: NMichael Roth <mdroth@linux.vnet.ibm.com>
      Reviewed-by: NGreg Kurz <groug@kaod.org>
      Tested-by: NEric Auger <eric.auger@redhat.com>
      Reviewed-by: NDavid Gibson <david@gibson.dropbear.id.au>
      Message-Id: <20171016222315.407-4-mdroth@linux.vnet.ibm.com>
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      f7b879e0
    • M
      Revert "qdev: Free QemuOpts when the QOM path goes away" · 2fc06c4a
      Michael Roth 提交于
      This reverts commit abed886e.
      
      This patch originally addressed an issue where a DEVICE_DELETED
      event could be emitted (in device_unparent()) before a Device's
      QemuOpts were cleaned up (in device_finalize()), leading to a
      "duplicate ID" error if management attempted to immediately add
      a device with the same ID in response to the DEVICE_DELETED event.
      
      An alternative will be implemented in a subsequent patch where we
      defer the DEVICE_DELETED event until device_finalize(), which would
      also prevent the race, so we revert the original fix in preparation.
      Signed-off-by: NMichael Roth <mdroth@linux.vnet.ibm.com>
      Reviewed-by: NGreg Kurz <groug@kaod.org>
      Tested-by: NEric Auger <eric.auger@redhat.com>
      Reviewed-by: NDavid Gibson <david@gibson.dropbear.id.au>
      Message-Id: <20171016222315.407-3-mdroth@linux.vnet.ibm.com>
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      2fc06c4a