diff options
author | Peter Maydell <peter.maydell@linaro.org> | 2018-04-03 23:23:58 +0100 |
---|---|---|
committer | Peter Maydell <peter.maydell@linaro.org> | 2018-04-03 23:23:58 +0100 |
commit | f7481f651ccf7bf0fe3547b16820c9d18da8f584 (patch) | |
tree | 062eed625eeb7360f0010cf6c5e2b2e4949a85dc | |
parent | 9abfc88af3ffd3b33c7fab4471da86462ee71d95 (diff) | |
parent | d3b6e3bb6dc582099b8572c439fa651b3672de89 (diff) |
Merge remote-tracking branch 'remotes/cohuck/tags/s390x-20180403' into staging
- fix a memory leak in the ipl code introduced with this release
- increase timeout in the bios to avoid hangs during migration (and
rebuild bios to activate the change)
# gpg: Signature made Tue 03 Apr 2018 09:28:30 BST
# gpg: using RSA key DECF6B93C6F02FAF
# gpg: Good signature from "Cornelia Huck <conny@cornelia-huck.de>"
# gpg: aka "Cornelia Huck <huckc@linux.vnet.ibm.com>"
# gpg: aka "Cornelia Huck <cornelia.huck@de.ibm.com>"
# gpg: aka "Cornelia Huck <cohuck@kernel.org>"
# gpg: aka "Cornelia Huck <cohuck@redhat.com>"
# Primary key fingerprint: C3D0 D66D C362 4FF6 A8C0 18CE DECF 6B93 C6F0 2FAF
* remotes/cohuck/tags/s390x-20180403:
pc-bios/s390-ccw: update image
pc-bios/s390-ccw: Increase virtio timeout to 30 seconds
hw/s390x: fix memory leak in s390_init_ipl_dev()
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
-rw-r--r-- | hw/s390x/s390-virtio-ccw.c | 5 | ||||
-rw-r--r-- | pc-bios/s390-ccw.img | bin | 34568 -> 30568 bytes | |||
-rw-r--r-- | pc-bios/s390-ccw/virtio.c | 2 |
3 files changed, 5 insertions, 2 deletions
diff --git a/hw/s390x/s390-virtio-ccw.c b/hw/s390x/s390-virtio-ccw.c index 864145a7c6..435f7c99e7 100644 --- a/hw/s390x/s390-virtio-ccw.c +++ b/hw/s390x/s390-virtio-ccw.c @@ -246,6 +246,7 @@ static void s390_init_ipl_dev(const char *kernel_filename, { Object *new = object_new(TYPE_S390_IPL); DeviceState *dev = DEVICE(new); + char *netboot_fw_prop; if (kernel_filename) { qdev_prop_set_string(dev, "kernel", kernel_filename); @@ -256,9 +257,11 @@ static void s390_init_ipl_dev(const char *kernel_filename, qdev_prop_set_string(dev, "cmdline", kernel_cmdline); qdev_prop_set_string(dev, "firmware", firmware); qdev_prop_set_bit(dev, "enforce_bios", enforce_bios); - if (!strlen(object_property_get_str(new, "netboot_fw", &error_abort))) { + netboot_fw_prop = object_property_get_str(new, "netboot_fw", &error_abort); + if (!strlen(netboot_fw_prop)) { qdev_prop_set_string(dev, "netboot_fw", netboot_fw); } + g_free(netboot_fw_prop); object_property_add_child(qdev_get_machine(), TYPE_S390_IPL, new, NULL); object_unref(new); diff --git a/pc-bios/s390-ccw.img b/pc-bios/s390-ccw.img Binary files differindex fbd76bb55e..d17e85995d 100644 --- a/pc-bios/s390-ccw.img +++ b/pc-bios/s390-ccw.img diff --git a/pc-bios/s390-ccw/virtio.c b/pc-bios/s390-ccw/virtio.c index 817e7f56ea..cdb66f459e 100644 --- a/pc-bios/s390-ccw/virtio.c +++ b/pc-bios/s390-ccw/virtio.c @@ -14,7 +14,7 @@ #include "virtio-scsi.h" #include "bswap.h" -#define VRING_WAIT_REPLY_TIMEOUT 3 +#define VRING_WAIT_REPLY_TIMEOUT 30 static VRing block[VIRTIO_MAX_VQS]; static char ring_area[VIRTIO_RING_SIZE * VIRTIO_MAX_VQS] |