qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] 946e55: s390x: add compat machine for 2.7


From: GitHub
Subject: [Qemu-commits] [qemu/qemu] 946e55: s390x: add compat machine for 2.7
Date: Tue, 17 May 2016 09:30:05 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 946e55f3c7ff3eb9fa49e57e15c209858aaa9ac9
      
https://github.com/qemu/qemu/commit/946e55f3c7ff3eb9fa49e57e15c209858aaa9ac9
  Author: Cornelia Huck <address@hidden>
  Date:   2016-05-17 (Tue, 17 May 2016)

  Changed paths:
    M hw/s390x/s390-virtio-ccw.c
    M include/hw/compat.h

  Log Message:
  -----------
  s390x: add compat machine for 2.7

Also add some of the option cascading we were missing.

Signed-off-by: Cornelia Huck <address@hidden>


  Commit: 9700230b0d6d68d8650206ffd10d132219678db1
      
https://github.com/qemu/qemu/commit/9700230b0d6d68d8650206ffd10d132219678db1
  Author: Fan Zhang <address@hidden>
  Date:   2016-05-17 (Tue, 17 May 2016)

  Changed paths:
    M hw/s390x/s390-virtio-ccw.c
    M include/hw/s390x/s390-virtio-ccw.h
    M target-s390x/cpu.h
    M target-s390x/kvm.c
    M target-s390x/machine.c

  Log Message:
  -----------
  s390x: enable runtime instrumentation

Introduce run-time-instrumentation support when running under kvm for
virtio-ccw 2.7 machine and make sure older machines can not enable it.

The new ri_allowed field in the s390MachineClass serves as an indicator
whether the feature can be used by the machine and should therefore be
activated if available.

riccb_needed() is used to check whether riccb is needed or not in live
migration.

Signed-off-by: Fan Zhang <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: 04ca4b92ecb33703b03b8501bfb3d8b0c551e2e5
      
https://github.com/qemu/qemu/commit/04ca4b92ecb33703b03b8501bfb3d8b0c551e2e5
  Author: Alexander Yarygin <address@hidden>
  Date:   2016-05-17 (Tue, 17 May 2016)

  Changed paths:
    M hw/s390x/ipl.c
    M hw/s390x/ipl.h
    M hw/s390x/s390-virtio-ccw.c
    M target-s390x/misc_helper.c

  Log Message:
  -----------
  s390x/ipl: Extend the IplParameterBlock struct

The IplParameterBlock struct currently has only 200 bytes filled, but it
can be up to 4K.

This patch converts the struct to union with a fully populated struct
inside it and second struct with old values.

For compatibility reasons we disable migration of the extended iplb
field for pre-2.7 machines. Also a guest still can read/write only the
first 200 bytes of IPLB for now.

Signed-off-by: Alexander Yarygin <address@hidden>
Reviewed-by: David Hildenbrand <address@hidden>
Acked-by: Christian Borntraeger <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: 9946a9113cf5d84c9381342100343aa97f736ee0
      
https://github.com/qemu/qemu/commit/9946a9113cf5d84c9381342100343aa97f736ee0
  Author: Alexander Yarygin <address@hidden>
  Date:   2016-05-17 (Tue, 17 May 2016)

  Changed paths:
    M hw/s390x/ipl.h
    M target-s390x/misc_helper.c

  Log Message:
  -----------
  s390x/ipl: Add type and length checks for IplParameterBlock values

We can check for valid type and lengths of the IplParameterBlock fields
when receiving the struct from the guest.

Length of the IplParameterBlock can be less than 4K. To play safe we can
read and write only required amount of data.

Signed-off-by: Alexander Yarygin <address@hidden>
Reviewed-by: David Hildenband <address@hidden>
Acked-by: Christian Borntraeger <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: 6aed958978ba9e32301b131e1c5dcadcf952a1ed
      
https://github.com/qemu/qemu/commit/6aed958978ba9e32301b131e1c5dcadcf952a1ed
  Author: Alexander Yarygin <address@hidden>
  Date:   2016-05-17 (Tue, 17 May 2016)

  Changed paths:
    M hw/s390x/ipl.c
    M hw/s390x/ipl.h

  Log Message:
  -----------
  s390x/ipl: Provide ipl parameter block

Right now we return the ipl parameter block only if the guest
specified one. Let's fill in the parameter block when bootindex
parameter is available and not booting from an external kernel.

Signed-off-by: Alexander Yarygin <address@hidden>
Reviewed-by: David Hildenbrand <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: 3041e3bead8df443e5212ae8a608cbec81bc90bd
      
https://github.com/qemu/qemu/commit/3041e3bead8df443e5212ae8a608cbec81bc90bd
  Author: Alexander Yarygin <address@hidden>
  Date:   2016-05-17 (Tue, 17 May 2016)

  Changed paths:
    M hw/s390x/ipl.c
    M hw/s390x/ipl.h
    M target-s390x/ioinst.c

  Log Message:
  -----------
  s390x/ipl: Add ssid field to IplParameterBlock

Add the ssid field to the ipl parameter block struct and fill it when
necessary so the guest can use it.

Signed-off-by: Alexander Yarygin <address@hidden>
Reviewed-by: David Hildenbrand <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: d046c51dad3bda03e4c012c83411842b92271542
      
https://github.com/qemu/qemu/commit/d046c51dad3bda03e4c012c83411842b92271542
  Author: Alexander Yarygin <address@hidden>
  Date:   2016-05-17 (Tue, 17 May 2016)

  Changed paths:
    A pc-bios/s390-ccw/iplb.h
    M pc-bios/s390-ccw/main.c
    M pc-bios/s390-ccw/s390-ccw.h
    M pc-bios/s390-ccw/start.S

  Log Message:
  -----------
  pc-bios/s390-ccw: Get device address via diag 308/6

To IPL from a device, pc-bios receives from qemu a device address via
general register 7. The better way to do it is to use diag308/6
instruction which returns so called
"IplParameterBlock". IplParameterBlock contains the device address for
IPL and additional parameters that can be used by pc-bios.

This patch allows pc-bios to get device address via diag308/6 and
doesn't use gr7 passed boot information anymore.

Signed-off-by: Alexander Yarygin <address@hidden>
Reviewed-by: David Hildenbrand <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: a388ac74dee9fe3bed24dc96041f51caf615ec52
      
https://github.com/qemu/qemu/commit/a388ac74dee9fe3bed24dc96041f51caf615ec52
  Author: Cornelia Huck <address@hidden>
  Date:   2016-05-17 (Tue, 17 May 2016)

  Changed paths:
    M pc-bios/s390-ccw.img

  Log Message:
  -----------
  s390-ccw.img: rebuild image

Contains the following change:

pc-bios/s390-ccw: Get device address via diag 308/6

Signed-off-by: Cornelia Huck <address@hidden>


  Commit: 010d45d279067f66caecccf178a3c58e3e73cb5a
      
https://github.com/qemu/qemu/commit/010d45d279067f66caecccf178a3c58e3e73cb5a
  Author: Alexander Yarygin <address@hidden>
  Date:   2016-05-17 (Tue, 17 May 2016)

  Changed paths:
    M hw/s390x/ipl.c

  Log Message:
  -----------
  s390x/ipl: Remove redundant usage of gr7

We don't need to pass device address for pc-bios using gr7 anymore as
the pcbios completely relies on diag308 now, so we can remove it from
qemu. devno, ssid and cssid are migrated but the value was never reused,
so we can safely ignore these fields and migrate 0.

Signed-off-by: Alexander Yarygin <address@hidden>
Reviewed-by: David Hildenbrand <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: e563c59b6ada51da76eaba9dc8b39085546ebd02
      
https://github.com/qemu/qemu/commit/e563c59b6ada51da76eaba9dc8b39085546ebd02
  Author: xiaoqiang zhao <address@hidden>
  Date:   2016-05-17 (Tue, 17 May 2016)

  Changed paths:
    M hw/char/sclpconsole-lm.c

  Log Message:
  -----------
  hw/char: QOM'ify sclpconsole-lm.c

Drop the DO_UPCAST macro

Signed-off-by: xiaoqiang zhao <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: 3f6ec642ae84cde9375bd4e624ab4e3fe23f60b9
      
https://github.com/qemu/qemu/commit/3f6ec642ae84cde9375bd4e624ab4e3fe23f60b9
  Author: xiaoqiang zhao <address@hidden>
  Date:   2016-05-17 (Tue, 17 May 2016)

  Changed paths:
    M hw/char/sclpconsole.c

  Log Message:
  -----------
  hw/char: QOM'ify sclpconsole.c

Drop the DO_UPCAST macro

Signed-off-by: xiaoqiang zhao <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: bac45d5147fbe832428944610c70484b18539292
      
https://github.com/qemu/qemu/commit/bac45d5147fbe832428944610c70484b18539292
  Author: Yi Min Zhao <address@hidden>
  Date:   2016-05-17 (Tue, 17 May 2016)

  Changed paths:
    M hw/s390x/s390-pci-inst.c

  Log Message:
  -----------
  s390x/pci: fix reg_irqs()

In reg_irqs(), present code assumes that map_indicator() always issues
successfully. Let's check it and return the error to caller in order to
inform guest.

Signed-off-by: Yi Min Zhao <address@hidden>
Reviewed-by: Cornelia Huck <address@hidden>
Reviewed-by: Pierre Morel <address@hidden>
Reviewed-by: Dong Jia Shi <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: 8f5cb69313acac264201289c08f255f0ddac71a4
      
https://github.com/qemu/qemu/commit/8f5cb69313acac264201289c08f255f0ddac71a4
  Author: Yi Min Zhao <address@hidden>
  Date:   2016-05-17 (Tue, 17 May 2016)

  Changed paths:
    M hw/s390x/s390-pci-bus.c
    M hw/s390x/s390-pci-bus.h
    M hw/s390x/sclp.c

  Log Message:
  -----------
  s390x/pci: separate s390_sclp_configure function

Split s390_sclp_configure() into separate functions for sclp
configuring and deconfiguring in order to make the code more readable.

Signed-off-by: Yi Min Zhao <address@hidden>
Reviewed-by: Pierre Morel <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: 715838881fdcab07aff26ce2f5fd37a4af8f243f
      
https://github.com/qemu/qemu/commit/715838881fdcab07aff26ce2f5fd37a4af8f243f
  Author: Yi Min Zhao <address@hidden>
  Date:   2016-05-17 (Tue, 17 May 2016)

  Changed paths:
    M hw/s390x/s390-pci-bus.c
    M hw/s390x/s390-pci-bus.h
    M hw/s390x/s390-pci-inst.c

  Log Message:
  -----------
  s390x/pci: separate s390_pcihost_iommu_configure function

Split s390_pcihost_iommu_configure() into separate functions for
configuring and deconfiguring in order to make the code more readable.

Signed-off-by: Yi Min Zhao <address@hidden>
Reviewed-by: Pierre Morel <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: e141dbadfa405a4ae16515c80a0e215e462a259f
      
https://github.com/qemu/qemu/commit/e141dbadfa405a4ae16515c80a0e215e462a259f
  Author: Yi Min Zhao <address@hidden>
  Date:   2016-05-17 (Tue, 17 May 2016)

  Changed paths:
    M hw/s390x/s390-pci-inst.c
    M hw/s390x/s390-pci-inst.h

  Log Message:
  -----------
  s390x/pci: export pci_dereg_ioat and pci_dereg_irqs

dereg_irqs and dereg_ioat are needed by external functions. Let's
rename and export both of them in s390-pci-inst.h.

Signed-off-by: Yi Min Zhao <address@hidden>
Reviewed-by: Pierre Morel <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: df6a050c82e56fc7a0afeb62cf4bc2e0c4c6d888
      
https://github.com/qemu/qemu/commit/df6a050c82e56fc7a0afeb62cf4bc2e0c4c6d888
  Author: Yi Min Zhao <address@hidden>
  Date:   2016-05-17 (Tue, 17 May 2016)

  Changed paths:
    M hw/s390x/s390-pci-bus.c
    M hw/s390x/s390-pci-bus.h

  Log Message:
  -----------
  s390x/pci: introduce S390PCIBusDevice.iommu_enabled

We introduce iommu_enabled field for S390PCIBusDevice struct to
track whether the iommu has been enabled for the device. This allows
us to stop temporarily changing ->configured while en/disabling the
iommu and to do conditional cleanup later.

Signed-off-by: Yi Min Zhao <address@hidden>
Reviewed-by: Pierre Morel <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: 259a4f0a7619fef69427555839e0c9db84fd0561
      
https://github.com/qemu/qemu/commit/259a4f0a7619fef69427555839e0c9db84fd0561
  Author: Yi Min Zhao <address@hidden>
  Date:   2016-05-17 (Tue, 17 May 2016)

  Changed paths:
    M hw/s390x/s390-pci-bus.c

  Log Message:
  -----------
  s390x/pci: fix s390_pci_sclp_deconfigure

When deconfiguring a s390 pci device, we should deconfigure the
corresponding IOMMU memory region and the IRQs for the device.

Signed-off-by: Yi Min Zhao <address@hidden>
Reviewed-by: Pierre Morel <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: a6d9d4f26afc2c2fcfe6a89f0766371a60143d5a
      
https://github.com/qemu/qemu/commit/a6d9d4f26afc2c2fcfe6a89f0766371a60143d5a
  Author: Yi Min Zhao <address@hidden>
  Date:   2016-05-17 (Tue, 17 May 2016)

  Changed paths:
    M hw/s390x/s390-pci-inst.c
    M hw/s390x/s390-pci-inst.h

  Log Message:
  -----------
  s390x/pci: enhance mpcifc_service_call

Enhance error handling for mpcifc_service_call() to propagate errors
to guest by setting status codes or triggering program interrupts.

Signed-off-by: Yi Min Zhao <address@hidden>
Reviewed-by: Pierre Morel <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: 3b40ea2957683bc7bea1a358f25045e6184077cf
      
https://github.com/qemu/qemu/commit/3b40ea2957683bc7bea1a358f25045e6184077cf
  Author: Yi Min Zhao <address@hidden>
  Date:   2016-05-17 (Tue, 17 May 2016)

  Changed paths:
    M hw/s390x/s390-pci-bus.c

  Log Message:
  -----------
  s390x/pci: add length checking for pci sclp handlers

The configure/deconfigure sclp commands need a SCCB with a length of
at least 16. Indicate in the response code if this is not fulfilled.

Signed-off-by: Yi Min Zhao <address@hidden>
Reviewed-by: Pierre Morel <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: c26916942a4a085b316fd102d1725412a6544b04
      
https://github.com/qemu/qemu/commit/c26916942a4a085b316fd102d1725412a6544b04
  Author: Yi Min Zhao <address@hidden>
  Date:   2016-05-17 (Tue, 17 May 2016)

  Changed paths:
    M hw/s390x/s390-pci-bus.h

  Log Message:
  -----------
  s390x/pci: remove whitespace

Fix indentation of PciCfgSccb struct.

Signed-off-by: Yi Min Zhao <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: a257c741491ff1c3c192d13a89c136dd6401c54d
      
https://github.com/qemu/qemu/commit/a257c741491ff1c3c192d13a89c136dd6401c54d
  Author: Peter Maydell <address@hidden>
  Date:   2016-05-17 (Tue, 17 May 2016)

  Changed paths:
    M hw/char/sclpconsole-lm.c
    M hw/char/sclpconsole.c
    M hw/s390x/ipl.c
    M hw/s390x/ipl.h
    M hw/s390x/s390-pci-bus.c
    M hw/s390x/s390-pci-bus.h
    M hw/s390x/s390-pci-inst.c
    M hw/s390x/s390-pci-inst.h
    M hw/s390x/s390-virtio-ccw.c
    M hw/s390x/sclp.c
    M include/hw/compat.h
    M include/hw/s390x/s390-virtio-ccw.h
    M pc-bios/s390-ccw.img
    A pc-bios/s390-ccw/iplb.h
    M pc-bios/s390-ccw/main.c
    M pc-bios/s390-ccw/s390-ccw.h
    M pc-bios/s390-ccw/start.S
    M target-s390x/cpu.h
    M target-s390x/ioinst.c
    M target-s390x/kvm.c
    M target-s390x/machine.c
    M target-s390x/misc_helper.c

  Log Message:
  -----------
  Merge remote-tracking branch 'remotes/cohuck/tags/s390x-20160517' into staging

First batch of s390x patches for 2.7:
- The new machine for 2.7
- Make use of the runtime instrumentation support introduced in
  the kernel
- Enhance our ipl (boot) process: We can now start from devices
  in subchannel sets > 0 as well. As a bonus, the conversion to
  diag308 in the bios allows us to get rid of the gr7 hack.
- Xiaoqiang Zhao's SCLP qomification patches
- Several fixes in the s390x pci implementation

# gpg: Signature made Tue 17 May 2016 15:35:32 BST using RSA key ID C6F02FAF
# gpg: Good signature from "Cornelia Huck <address@hidden>"
# gpg:                 aka "Cornelia Huck <address@hidden>"

* remotes/cohuck/tags/s390x-20160517:
  s390x/pci: remove whitespace
  s390x/pci: add length checking for pci sclp handlers
  s390x/pci: enhance mpcifc_service_call
  s390x/pci: fix s390_pci_sclp_deconfigure
  s390x/pci: introduce S390PCIBusDevice.iommu_enabled
  s390x/pci: export pci_dereg_ioat and pci_dereg_irqs
  s390x/pci: separate s390_pcihost_iommu_configure function
  s390x/pci: separate s390_sclp_configure function
  s390x/pci: fix reg_irqs()
  hw/char: QOM'ify sclpconsole.c
  hw/char: QOM'ify sclpconsole-lm.c
  s390x/ipl: Remove redundant usage of gr7
  s390-ccw.img: rebuild image
  pc-bios/s390-ccw: Get device address via diag 308/6
  s390x/ipl: Add ssid field to IplParameterBlock
  s390x/ipl: Provide ipl parameter block
  s390x/ipl: Add type and length checks for IplParameterBlock values
  s390x/ipl: Extend the IplParameterBlock struct
  s390x: enable runtime instrumentation
  s390x: add compat machine for 2.7

Signed-off-by: Peter Maydell <address@hidden>


Compare: https://github.com/qemu/qemu/compare/5a3fd960f39c...a257c741491f

reply via email to

[Prev in Thread] Current Thread [Next in Thread]