qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] 517ff1: s390x: vmstatify config migration for


From: GitHub
Subject: [Qemu-commits] [qemu/qemu] 517ff1: s390x: vmstatify config migration for virtio-ccw
Date: Thu, 06 Jul 2017 05:00:05 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 517ff12c7d000fa1f5b1e989b22fb86a286f9cc2
      
https://github.com/qemu/qemu/commit/517ff12c7d000fa1f5b1e989b22fb86a286f9cc2
  Author: Halil Pasic <address@hidden>
  Date:   2017-07-05 (Wed, 05 Jul 2017)

  Changed paths:
    M hw/intc/s390_flic.c
    M hw/s390x/ccw-device.c
    M hw/s390x/ccw-device.h
    M hw/s390x/css.c
    M hw/s390x/virtio-ccw.c
    M include/hw/s390x/css.h
    M include/hw/s390x/s390_flic.h

  Log Message:
  -----------
  s390x: vmstatify config migration for virtio-ccw

Let's vmstatify virtio_ccw_save_config and virtio_ccw_load_config for
flexibility (extending using subsections) and for fun.

To achieve this we need to hack the config_vector, which is VirtIODevice
(that is common virtio) state, in the middle of the VirtioCcwDevice state
representation.  This is somewhat ugly, but we have no choice because the
stream format needs to be preserved.

Almost no changes in behavior. Exception is everything that comes with
vmstate like extra bookkeeping about what's in the stream, and maybe some
extra checks and better error reporting.

Signed-off-by: Halil Pasic <address@hidden>
Reviewed-by: Dr. David Alan Gilbert <address@hidden>
Reviewed-by: Juan Quintela <address@hidden>
Reviewed-by: Cornelia Huck <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Christian Borntraeger <address@hidden>


  Commit: 1728cff2abef27aa00bc7e5f6f73c13b7bd256cb
      
https://github.com/qemu/qemu/commit/1728cff2abef27aa00bc7e5f6f73c13b7bd256cb
  Author: Dong Jia Shi <address@hidden>
  Date:   2017-07-05 (Wed, 05 Jul 2017)

  Changed paths:
    M hw/s390x/3270-ccw.c

  Log Message:
  -----------
  s390x/3270: fix instruction interception handler

Commit bab482d7405f ("s390x/css: ccw translation infrastructure")
introduced instruction interception handler for different types of
subchannels. For emulated 3270 devices, we should assign the virtual
subchannel handler to them during device realization process, or 3270
will not work.

Fixes: bab482d7405f ("s390x/css: ccw translation infrastructure")

Reviewed-by: Jing Liu <address@hidden>
Reviewed-by: Halil Pasic <address@hidden>
Reviewed-by: Cornelia Huck <address@hidden>
Signed-off-by: Dong Jia Shi <address@hidden>
Signed-off-by: Christian Borntraeger <address@hidden>


  Commit: f62f210943f8290bc0a060f4090046841815a046
      
https://github.com/qemu/qemu/commit/f62f210943f8290bc0a060f4090046841815a046
  Author: Halil Pasic <address@hidden>
  Date:   2017-07-05 (Wed, 05 Jul 2017)

  Changed paths:
    M hw/intc/s390_flic_kvm.c

  Log Message:
  -----------
  s390x: fix error propagation in kvm-flic's realize

>From the moment it was introduced by commit a2875e6f98 ("s390x/kvm:
implement floating-interrupt controller device", 2013-07-16) the kvm-flic
is not making realize fail properly in case it's impossible to create the
KVM device which basically serves as a backend and is absolutely
essential for having an operational kvm-flic.

Let's fix this by making sure we do proper error propagation in realize.

Signed-off-by: Halil Pasic <address@hidden>
Fixes: a2875e6f98 "s390x/kvm: implement floating-interrupt controller device"
Reviewed-by: Dong Jia Shi <address@hidden>
Reviewed-by: Yi Min Zhao <address@hidden>
Signed-off-by: Christian Borntraeger <address@hidden>


  Commit: 5cbab1bfdeab274e5d4e3353fa626ba8697eed10
      
https://github.com/qemu/qemu/commit/5cbab1bfdeab274e5d4e3353fa626ba8697eed10
  Author: Halil Pasic <address@hidden>
  Date:   2017-07-05 (Wed, 05 Jul 2017)

  Changed paths:
    M hw/intc/s390_flic.c
    M hw/intc/s390_flic_kvm.c

  Log Message:
  -----------
  s390x: fix realize inheritance for kvm-flic

Commit f6f4ce4211 ("s390x: add property adapter_routes_max_batch",
2016-12-09) introduces a common realize (intended to be common for all
the subclasses) for flic, but fails to make sure the kvm-flic which had
its own is actually calling this common realize.

This omission fortunately does not result in a grave problem. The common
realize was only supposed to catch a possible programming mistake by
validating a value of a property set via the compat machine macros. Since
there was no programming mistake we don't need this fixed for stable.

Let's fix this problem by making sure kvm flic honors the realize of its
parent class.

Let us also improve on the error message we would hypothetically emit
when the validation fails.

Signed-off-by: Halil Pasic <address@hidden>
Fixes: f6f4ce4211 ("s390x: add property adapter_routes_max_batch")
Reviewed-by: Dong Jia Shi <address@hidden>
Reviewed-by: Yi Min Zhao <address@hidden>
Reviewed-by: Cornelia Huck <address@hidden>
Signed-off-by: Christian Borntraeger <address@hidden>


  Commit: c1976ae7a291956ba3d79228150e4c1d21f5d998
      
https://github.com/qemu/qemu/commit/c1976ae7a291956ba3d79228150e4c1d21f5d998
  Author: Cornelia Huck <address@hidden>
  Date:   2017-07-05 (Wed, 05 Jul 2017)

  Changed paths:
    M MAINTAINERS

  Log Message:
  -----------
  s390x/MAINTAINERS: Update my email address

Signed-off-by: Cornelia Huck <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Christian Borntraeger <address@hidden>


  Commit: 38cba1f4d83525e728719d7ac6e9551cddfadee6
      
https://github.com/qemu/qemu/commit/38cba1f4d83525e728719d7ac6e9551cddfadee6
  Author: Viktor Mihajlovski <address@hidden>
  Date:   2017-07-05 (Wed, 05 Jul 2017)

  Changed paths:
    M target/s390x/cpu_models.c

  Log Message:
  -----------
  s390x: return unavailable features via query-cpu-definitions

The response for query-cpu-definitions didn't include the
unavailable-features field, which is used by libvirt to figure
out whether a certain cpu model is usable on the host.

The unavailable features are now computed by obtaining the host CPU
model and comparing it against the known CPU models. The comparison
takes into account the generation, the GA level and the feature
bitmaps. In the case of a CPU generation/GA level mismatch
a feature called "type" is reported to be missing.

As a result, the output of virsh domcapabilities would change
from something like
 ...
     <mode name='custom' supported='yes'>
      <model usable='unknown'>z10EC-base</model>
      <model usable='unknown'>z9EC-base</model>
      <model usable='unknown'>z196.2-base</model>
      <model usable='unknown'>z900-base</model>
      <model usable='unknown'>z990</model>
 ...
to
 ...
     <mode name='custom' supported='yes'>
      <model usable='yes'>z10EC-base</model>
      <model usable='yes'>z9EC-base</model>
      <model usable='no'>z196.2-base</model>
      <model usable='yes'>z900-base</model>
      <model usable='yes'>z990</model>
 ...

Signed-off-by: Viktor Mihajlovski <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: David Hildenbrand <address@hidden>
Acked-by: Cornelia Huck <address@hidden>
Signed-off-by: Christian Borntraeger <address@hidden>


  Commit: cda3c19ff56d1b567631ce17f7a3bdb47cfa9455
      
https://github.com/qemu/qemu/commit/cda3c19ff56d1b567631ce17f7a3bdb47cfa9455
  Author: QingFeng Hao <address@hidden>
  Date:   2017-07-05 (Wed, 05 Jul 2017)

  Changed paths:
    M hw/s390x/virtio-ccw.c
    M target/s390x/cpu.h

  Log Message:
  -----------
  virtio-scsi-ccw: use ioeventfd even when KVM is disabled

This patch is based on a similar patch from Stefan Hajnoczi -
commit c324fd0a39c ("virtio-pci: use ioeventfd even when KVM is disabled")

Do not check kvm_eventfds_enabled() when KVM is disabled since it
always returns 0.  Since commit 8c56c1a592b5092d91da8d8943c17777d6462a6f
("memory: emulate ioeventfd") it has been possible to use ioeventfds in
qtest or TCG mode.

This patch makes -device virtio-scsi-ccw,iothread=iothread0 work even
when KVM is disabled.
Currently we don't have an equivalent to "memory: emulate ioeventfd"
for ccw yet, but that this doesn't hurt and qemu-iotests 068 can pass with
skipping iothread arguments.

I have tested that virtio-scsi-ccw works under tcg both with and without
iothread.

This patch fixes qemu-iotests 068, which was accidentally merged early
despite the dependency on ioeventfd.

Signed-off-by: QingFeng Hao <address@hidden>
Reviewed-by: Cornelia Huck <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Signed-off-by: Christian Borntraeger <address@hidden>


  Commit: 1045e3cdafaf1218d9f771080ba5c9d4f64346e4
      
https://github.com/qemu/qemu/commit/1045e3cdafaf1218d9f771080ba5c9d4f64346e4
  Author: Thomas Huth <address@hidden>
  Date:   2017-07-05 (Wed, 05 Jul 2017)

  Changed paths:
    M hw/s390x/ipl.c

  Log Message:
  -----------
  hw/s390x/ipl: Fix endianness problem with netboot_start_addr

The start address has to be stored in big endian byte order
in the iplb.ccw block for the guest.

Signed-off-by: Thomas Huth <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Cornelia Huck <address@hidden>
Signed-off-by: Christian Borntraeger <address@hidden>


  Commit: b11365867568ba954de667a0bfe0945b8f78d6bd
      
https://github.com/qemu/qemu/commit/b11365867568ba954de667a0bfe0945b8f78d6bd
  Author: Peter Maydell <address@hidden>
  Date:   2017-07-06 (Thu, 06 Jul 2017)

  Changed paths:
    M MAINTAINERS
    M hw/intc/s390_flic.c
    M hw/intc/s390_flic_kvm.c
    M hw/s390x/3270-ccw.c
    M hw/s390x/ccw-device.c
    M hw/s390x/ccw-device.h
    M hw/s390x/css.c
    M hw/s390x/ipl.c
    M hw/s390x/virtio-ccw.c
    M include/hw/s390x/css.h
    M include/hw/s390x/s390_flic.h
    M target/s390x/cpu.h
    M target/s390x/cpu_models.c

  Log Message:
  -----------
  Merge remote-tracking branch 'remotes/borntraeger/tags/s390x-20170706' into 
staging

s390x/kvm/migration: fixes, enhancements and cleanups

- new email address for Cornelia
- Fixes: 3270, flic, virtio-scsi-ccw, ipl
- Enhancements, cpumodel, migration

# gpg: Signature made Thu 06 Jul 2017 08:18:19 BST
# gpg:                using RSA key 0x117BBC80B5A61C7C
# gpg: Good signature from "Christian Borntraeger (IBM) <address@hidden>"
# Primary key fingerprint: F922 9381 A334 08F9 DBAB  FBCA 117B BC80 B5A6 1C7C

* remotes/borntraeger/tags/s390x-20170706:
  hw/s390x/ipl: Fix endianness problem with netboot_start_addr
  virtio-scsi-ccw: use ioeventfd even when KVM is disabled
  s390x: return unavailable features via query-cpu-definitions
  s390x/MAINTAINERS: Update my email address
  s390x: fix realize inheritance for kvm-flic
  s390x: fix error propagation in kvm-flic's realize
  s390x/3270: fix instruction interception handler
  s390x: vmstatify config migration for virtio-ccw

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


Compare: https://github.com/qemu/qemu/compare/67b9c5d4f37e...b11365867568

reply via email to

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