From 501cf8facd49d9d5cfbb76a8010e260b655920d9 Mon Sep 17 00:00:00 2001 From: Yuval Shaia Date: Sun, 5 May 2019 13:51:12 +0300 Subject: [PATCH 01/16] hw/rdma: Delete unused headers inclusion This is a trivial cleanup patch. Signed-off-by: Yuval Shaia Reviewed-by: Kamal Heib Message-Id: <20190505105112.22691-1-yuval.shaia@oracle.com> Signed-off-by: Laurent Vivier --- hw/rdma/rdma_backend.c | 7 ------- 1 file changed, 7 deletions(-) diff --git a/hw/rdma/rdma_backend.c b/hw/rdma/rdma_backend.c index cf34874e9d..c39051068d 100644 --- a/hw/rdma/rdma_backend.c +++ b/hw/rdma/rdma_backend.c @@ -14,16 +14,9 @@ */ #include "qemu/osdep.h" -#include "sysemu/sysemu.h" -#include "qapi/error.h" -#include "qapi/qmp/qlist.h" -#include "qapi/qmp/qnum.h" #include "qapi/qapi-events-rdma.h" #include -#include -#include -#include #include "contrib/rdmacm-mux/rdmacm-mux.h" #include "trace.h" From ff1543af228028f9b8d19f61c23d84d9bf8134f8 Mon Sep 17 00:00:00 2001 From: Li Qiang Date: Fri, 24 May 2019 23:28:32 -0700 Subject: [PATCH 02/16] migration: fix a typo MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 'postocpy' should be 'postcopy'. CC: qemu-trivial@nongnu.org Signed-off-by: Li Qiang Reviewed-by: Alex Bennée Reviewed-by: Juan Quintela Message-Id: <20190525062832.18009-1-liq3ea@163.com> Signed-off-by: Laurent Vivier --- migration/ram.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/migration/ram.c b/migration/ram.c index 4c60869226..359dc8f1bc 100644 --- a/migration/ram.c +++ b/migration/ram.c @@ -2236,7 +2236,7 @@ static RAMBlock *unqueue_page(RAMState *rs, ram_addr_t *offset) } /** - * get_queued_page: unqueue a page from the postocpy requests + * get_queued_page: unqueue a page from the postcopy requests * * Skips pages that are already sent (!dirty) * From cd2fa2a489c964335445dc911c92533133eb0fc2 Mon Sep 17 00:00:00 2001 From: Jie Wang Date: Tue, 30 Apr 2019 14:29:33 +0800 Subject: [PATCH 03/16] vhost: fix incorrect print type MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit fix incorrect print type in vhost_virtqueue_stop Signed-off-by: Jie Wang Reviewed-by: Philippe Mathieu-Daudé Message-Id: <1556605773-42019-1-git-send-email-wangjie88@huawei.com> Signed-off-by: Laurent Vivier --- hw/virtio/vhost.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hw/virtio/vhost.c b/hw/virtio/vhost.c index 7f61018f2a..286bb27c65 100644 --- a/hw/virtio/vhost.c +++ b/hw/virtio/vhost.c @@ -1081,7 +1081,7 @@ static void vhost_virtqueue_stop(struct vhost_dev *dev, r = dev->vhost_ops->vhost_get_vring_base(dev, &state); if (r < 0) { - VHOST_OPS_DEBUG("vhost VQ %d ring restore failed: %d", idx, r); + VHOST_OPS_DEBUG("vhost VQ %u ring restore failed: %d", idx, r); /* Connection to the backend is broken, so let's sync internal * last avail idx to the device used idx. */ From 11259e9adce0ad2deaa2867395267e808eb8a3b2 Mon Sep 17 00:00:00 2001 From: Richard Henderson Date: Thu, 30 May 2019 12:38:24 -0500 Subject: [PATCH 04/16] util: Adjust qemu_guest_getrandom_nofail for Coverity MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Explicitly ignore the return value of qemu_guest_getrandom. Because we use error_fatal, all errors are already caught. Fixes: CID 1401701 Signed-off-by: Richard Henderson Reviewed-by: Peter Maydell Reviewed-by: Philippe Mathieu-Daudé Message-Id: <20190530173824.30699-1-richard.henderson@linaro.org> Signed-off-by: Laurent Vivier --- util/guest-random.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/util/guest-random.c b/util/guest-random.c index e8124a3cad..00a08fd981 100644 --- a/util/guest-random.c +++ b/util/guest-random.c @@ -56,7 +56,7 @@ int qemu_guest_getrandom(void *buf, size_t len, Error **errp) void qemu_guest_getrandom_nofail(void *buf, size_t len) { - qemu_guest_getrandom(buf, len, &error_fatal); + (void)qemu_guest_getrandom(buf, len, &error_fatal); } uint64_t qemu_guest_random_seed_thread_part1(void) From 77b748a8895fe843132fbe36e521e026ec544dc1 Mon Sep 17 00:00:00 2001 From: Markus Armbruster Date: Tue, 4 Jun 2019 10:00:10 +0200 Subject: [PATCH 05/16] test: Fix make target check-report.tap MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fix a fat-fingered invocation of tap-merge.pl in the recipe of target check-report.tap. Fixes: 9df43317b82 "test: replace gtester with a TAP driver" Signed-off-by: Markus Armbruster Reviewed-by: Paolo Bonzini Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé Message-Id: <20190604080010.23186-1-armbru@redhat.com> Signed-off-by: Laurent Vivier --- tests/Makefile.include | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/Makefile.include b/tests/Makefile.include index 46a36c2c95..34df040583 100644 --- a/tests/Makefile.include +++ b/tests/Makefile.include @@ -904,7 +904,7 @@ check-report-unit.tap: $(check-unit-y) # Reports and overall runs check-report.tap: $(patsubst %,check-report-qtest-%.tap, $(QTEST_TARGETS)) check-report-unit.tap - $(call quiet-command,./scripts/tap-merge.py $^ > $@,"GEN","$@") + $(call quiet-command, cat $^ | scripts/tap-merge.pl >$@,"GEN","$@") # FPU Emulation tests (aka softfloat) # From d33317b54c937c517561edad754d986b7e2c81cd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Date: Wed, 29 May 2019 16:05:04 +0200 Subject: [PATCH 06/16] docs/devel/build-system: Update an example MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The default-configs/ example added in 717171bd2025 is no more accurate since fa212a2b8b60 (and various further other commits). The Kconfig build system is now in place. Use the aarch64-softmmu config as example. Reviewed-by: Thomas Huth Signed-off-by: Philippe Mathieu-Daudé Message-Id: <20190529140504.21580-1-philmd@redhat.com> Signed-off-by: Laurent Vivier --- docs/devel/build-system.txt | 17 ++++++----------- 1 file changed, 6 insertions(+), 11 deletions(-) diff --git a/docs/devel/build-system.txt b/docs/devel/build-system.txt index addd274eeb..41bd08ea3a 100644 --- a/docs/devel/build-system.txt +++ b/docs/devel/build-system.txt @@ -413,18 +413,13 @@ context. - default-configs/*.mak The files under default-configs/ control what emulated hardware is built -into each QEMU system and userspace emulator targets. They merely -contain a long list of config variable definitions. For example, -default-configs/x86_64-softmmu.mak has: +into each QEMU system and userspace emulator targets. They merely contain +a list of config variable definitions like the machines that should be +included. For example, default-configs/aarch64-softmmu.mak has: - include sound.mak - include usb.mak - CONFIG_QXL=$(CONFIG_SPICE) - CONFIG_VGA_ISA=y - CONFIG_VGA_CIRRUS=y - CONFIG_VMWARE_VGA=y - CONFIG_VIRTIO_VGA=y - ...snip... + include arm-softmmu.mak + CONFIG_XLNX_ZYNQMP_ARM=y + CONFIG_XLNX_VERSAL=y These files rarely need changing unless new devices / hardware need to be enabled for a particular system/userspace emulation target From 573c3e077b2cbdd3eea6f5fb0f5d7ea8fcfbe086 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Date: Tue, 28 May 2019 18:40:11 +0200 Subject: [PATCH 07/16] hw/scsi/vmw_pvscsi: Use qbus_reset_all() directly MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Since the BusState is accesible from the SCSIBus object, it is pointless to use qbus_reset_all_fn. Use qbus_reset_all() directly. Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Dmitry Fleytman Message-Id: <20190528164020.32250-2-philmd@redhat.com> Signed-off-by: Laurent Vivier --- hw/scsi/vmw_pvscsi.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hw/scsi/vmw_pvscsi.c b/hw/scsi/vmw_pvscsi.c index 584b4be07e..c39e33fa35 100644 --- a/hw/scsi/vmw_pvscsi.c +++ b/hw/scsi/vmw_pvscsi.c @@ -440,7 +440,7 @@ static void pvscsi_reset_adapter(PVSCSIState *s) { s->resetting++; - qbus_reset_all_fn(&s->bus); + qbus_reset_all(BUS(&s->bus)); s->resetting--; pvscsi_process_completion_queue(s); assert(QTAILQ_EMPTY(&s->pending_queue)); @@ -848,7 +848,7 @@ pvscsi_on_cmd_reset_bus(PVSCSIState *s) trace_pvscsi_on_cmd_arrived("PVSCSI_CMD_RESET_BUS"); s->resetting++; - qbus_reset_all_fn(&s->bus); + qbus_reset_all(BUS(&s->bus)); s->resetting--; return PVSCSI_COMMAND_PROCESSING_SUCCEEDED; } From 4b3393e6510e0773260ed4fb22c2603a23bbcece Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Date: Tue, 28 May 2019 18:40:13 +0200 Subject: [PATCH 08/16] hw/pci-bridge: Use the QOM BUS() macro to access BusState.qbus MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Rather than looking inside the definition of a BusState with "s->bus.qbus", use the QOM prefered style: "BUS(&s->bus)". This patch was generated using the following Coccinelle script: // Use BUS() macros to access BusState.qbus @use_bus_macro_to_access_qbus@ expression obj; identifier bus; @@ -&obj->bus.qbus +BUS(&obj->bus) Suggested-by: Peter Maydell Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Marcel Apfelbaum Message-Id: <20190528164020.32250-4-philmd@redhat.com> Signed-off-by: Laurent Vivier --- hw/pci/pci_bridge.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hw/pci/pci_bridge.c b/hw/pci/pci_bridge.c index c6d9ded320..8d954885c0 100644 --- a/hw/pci/pci_bridge.c +++ b/hw/pci/pci_bridge.c @@ -273,7 +273,7 @@ void pci_bridge_write_config(PCIDevice *d, newctl = pci_get_word(d->config + PCI_BRIDGE_CONTROL); if (~oldctl & newctl & PCI_BRIDGE_CTL_BUS_RESET) { /* Trigger hot reset on 0->1 transition. */ - qbus_reset_all(&s->sec_bus.qbus); + qbus_reset_all(BUS(&s->sec_bus)); } } From 5027da92c454d51bc3560e74bf4a57b6619c4e1a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Date: Tue, 28 May 2019 18:40:14 +0200 Subject: [PATCH 09/16] hw/s390x/event-facility: Use the QOM BUS() macro to access BusState.qbus MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Rather than looking inside the definition of a BusState with "s->bus.qbus", use the QOM prefered style: "BUS(&s->bus)". This patch was generated using the following Coccinelle script: // Use BUS() macros to access BusState.qbus @use_bus_macro_to_access_qbus@ expression obj; identifier bus; @@ -&obj->bus.qbus +BUS(&obj->bus) Suggested-by: Peter Maydell Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Cornelia Huck Message-Id: <20190528164020.32250-5-philmd@redhat.com> Signed-off-by: Laurent Vivier --- hw/s390x/event-facility.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hw/s390x/event-facility.c b/hw/s390x/event-facility.c index ee5b83448b..e574223a22 100644 --- a/hw/s390x/event-facility.c +++ b/hw/s390x/event-facility.c @@ -466,12 +466,12 @@ static void init_event_facility(Object *obj) new = object_new(TYPE_SCLP_QUIESCE); object_property_add_child(obj, TYPE_SCLP_QUIESCE, new, NULL); object_unref(new); - qdev_set_parent_bus(DEVICE(new), &event_facility->sbus.qbus); + qdev_set_parent_bus(DEVICE(new), BUS(&event_facility->sbus)); new = object_new(TYPE_SCLP_CPU_HOTPLUG); object_property_add_child(obj, TYPE_SCLP_CPU_HOTPLUG, new, NULL); object_unref(new); - qdev_set_parent_bus(DEVICE(new), &event_facility->sbus.qbus); + qdev_set_parent_bus(DEVICE(new), BUS(&event_facility->sbus)); /* the facility will automatically realize the devices via the bus */ } From a30c34d2ab3ac2cc427140865abe08d927a01f39 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Date: Tue, 28 May 2019 18:40:17 +0200 Subject: [PATCH 10/16] hw/isa: Use the QOM DEVICE() macro to access DeviceState.qdev MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Rather than looking inside the definition of a DeviceState with "s->qdev", use the QOM prefered style: "DEVICE(s)". This patch was generated using the following Coccinelle script: // Use DEVICE() macros to access DeviceState.qdev @use_device_macro_to_access_qdev@ expression obj; identifier dev; @@ -&obj->dev.qdev +DEVICE(obj) Suggested-by: Peter Maydell Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Marcel Apfelbaum Message-Id: <20190528164020.32250-8-philmd@redhat.com> Signed-off-by: Laurent Vivier --- hw/isa/lpc_ich9.c | 2 +- hw/isa/vt82c686.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/hw/isa/lpc_ich9.c b/hw/isa/lpc_ich9.c index 031ee9cd93..35d17246e9 100644 --- a/hw/isa/lpc_ich9.c +++ b/hw/isa/lpc_ich9.c @@ -412,7 +412,7 @@ void ich9_lpc_pm_init(PCIDevice *lpc_pci, bool smm_enabled) true); } - ich9_lpc_reset(&lpc->d.qdev); + ich9_lpc_reset(DEVICE(lpc)); } /* APM */ diff --git a/hw/isa/vt82c686.c b/hw/isa/vt82c686.c index 85d0532dd5..d46754f61c 100644 --- a/hw/isa/vt82c686.c +++ b/hw/isa/vt82c686.c @@ -369,7 +369,7 @@ static void vt82c686b_pm_realize(PCIDevice *dev, Error **errp) pci_conf[0x90] = s->smb_io_base | 1; pci_conf[0x91] = s->smb_io_base >> 8; pci_conf[0xd2] = 0x90; - pm_smbus_init(&s->dev.qdev, &s->smb, false); + pm_smbus_init(DEVICE(s), &s->smb, false); memory_region_add_subregion(get_system_io(), s->smb_io_base, &s->smb.io); apm_init(dev, &s->apm, NULL, s); From 4ffebe230b235a4e9783047d3af5ce63d2596181 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Date: Tue, 28 May 2019 18:40:18 +0200 Subject: [PATCH 11/16] hw/usb-storage: Use the QOM DEVICE() macro to access DeviceState.qdev MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Rather than looking inside the definition of a DeviceState with "s->qdev", use the QOM prefered style: "DEVICE(s)". This patch was generated using the following Coccinelle script: // Use DEVICE() macros to access DeviceState.qdev @use_device_macro_to_access_qdev@ expression obj; identifier dev; @@ -&obj->dev.qdev +DEVICE(obj) Suggested-by: Peter Maydell Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Gerd Hoffmann Message-Id: <20190528164020.32250-9-philmd@redhat.com> Signed-off-by: Laurent Vivier --- hw/usb/dev-storage.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hw/usb/dev-storage.c b/hw/usb/dev-storage.c index cd5551d94f..0e4e93ef16 100644 --- a/hw/usb/dev-storage.c +++ b/hw/usb/dev-storage.c @@ -616,7 +616,7 @@ static void usb_msd_storage_realize(USBDevice *dev, Error **errp) * The hack is probably a bad idea. */ blk_ref(blk); - blk_detach_dev(blk, &s->dev.qdev); + blk_detach_dev(blk, DEVICE(s)); s->conf.blk = NULL; usb_desc_create_serial(dev); From a2596aee6c8274daff2357f4e1c406de763cf832 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Date: Tue, 28 May 2019 18:40:19 +0200 Subject: [PATCH 12/16] hw/vfio/pci: Use the QOM DEVICE() macro to access DeviceState.qdev MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Rather than looking inside the definition of a DeviceState with "s->qdev", use the QOM prefered style: "DEVICE(s)". This patch was generated using the following Coccinelle script: // Use DEVICE() macros to access DeviceState.qdev @use_device_macro_to_access_qdev@ expression obj; identifier dev; @@ -&obj->dev.qdev +DEVICE(obj) Suggested-by: Peter Maydell Signed-off-by: Philippe Mathieu-Daudé Acked-by: Alex Williamson Message-Id: <20190528164020.32250-10-philmd@redhat.com> Signed-off-by: Laurent Vivier --- hw/vfio/pci.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hw/vfio/pci.c b/hw/vfio/pci.c index 8e555db12e..2a4091d216 100644 --- a/hw/vfio/pci.c +++ b/hw/vfio/pci.c @@ -2717,7 +2717,7 @@ static void vfio_req_notifier_handler(void *opaque) return; } - qdev_unplug(&vdev->pdev.qdev, &err); + qdev_unplug(DEVICE(vdev), &err); if (err) { warn_reportf_err(err, VFIO_MSG_PREFIX, vdev->vbasedev.name); } @@ -2839,7 +2839,7 @@ static void vfio_realize(PCIDevice *pdev, Error **errp) vdev->vbasedev.name = g_path_get_basename(vdev->vbasedev.sysfsdev); vdev->vbasedev.ops = &vfio_pci_ops; vdev->vbasedev.type = VFIO_DEVICE_TYPE_PCI; - vdev->vbasedev.dev = &vdev->pdev.qdev; + vdev->vbasedev.dev = DEVICE(vdev); tmp = g_strdup_printf("%s/iommu_group", vdev->vbasedev.sysfsdev); len = readlink(tmp, group_path, sizeof(group_path)); From 0ce5e0201f1c9baca9586e48a2ea1b256071aac8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Date: Tue, 28 May 2019 18:40:16 +0200 Subject: [PATCH 13/16] hw/audio/ac97: Use the QOM DEVICE() macro to access DeviceState.qdev MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Rather than looking inside the definition of a DeviceState with "s->qdev", use the QOM prefered style: "DEVICE(s)". This patch was generated using the following Coccinelle script (with a bit of manual fix-up, removing an extra space to please checkpatch.pl): // Use DEVICE() macros to access DeviceState.qdev @use_device_macro_to_access_qdev@ expression obj; identifier dev; @@ -&obj->dev.qdev +DEVICE(obj) Suggested-by: Peter Maydell Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Peter Maydell . Message-Id: <20190528164020.32250-7-philmd@redhat.com> Signed-off-by: Laurent Vivier --- hw/audio/ac97.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hw/audio/ac97.c b/hw/audio/ac97.c index 2265622d44..a4e8d99e77 100644 --- a/hw/audio/ac97.c +++ b/hw/audio/ac97.c @@ -1388,7 +1388,7 @@ static void ac97_realize(PCIDevice *dev, Error **errp) pci_register_bar (&s->dev, 0, PCI_BASE_ADDRESS_SPACE_IO, &s->io_nam); pci_register_bar (&s->dev, 1, PCI_BASE_ADDRESS_SPACE_IO, &s->io_nabm); AUD_register_card ("ac97", &s->card); - ac97_on_reset (&s->dev.qdev); + ac97_on_reset(DEVICE(s)); } static void ac97_exit(PCIDevice *dev) From 6afa968a9378b8ac0f5c1c62e15285a48d467950 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Date: Tue, 28 May 2019 18:40:15 +0200 Subject: [PATCH 14/16] hw/sd: Use the QOM BUS() macro to access BusState.qbus MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Rather than looking inside the definition of a BusState with "s->bus.qbus", use the QOM prefered style: "BUS(&s->bus)". This patch was generated using the following Coccinelle script: // Use BUS() macros to access BusState.qbus @use_bus_macro_to_access_qbus@ expression obj; identifier bus; @@ -&obj->bus.qbus +BUS(&obj->bus) Suggested-by: Peter Maydell Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Peter Maydell Message-Id: <20190528164020.32250-6-philmd@redhat.com> Signed-off-by: Laurent Vivier --- hw/sd/milkymist-memcard.c | 2 +- hw/sd/ssi-sd.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/hw/sd/milkymist-memcard.c b/hw/sd/milkymist-memcard.c index df42aa1c54..dd1ba649d9 100644 --- a/hw/sd/milkymist-memcard.c +++ b/hw/sd/milkymist-memcard.c @@ -277,7 +277,7 @@ static void milkymist_memcard_realize(DeviceState *dev, Error **errp) /* FIXME use a qdev drive property instead of drive_get_next() */ dinfo = drive_get_next(IF_SD); blk = dinfo ? blk_by_legacy_dinfo(dinfo) : NULL; - carddev = qdev_create(&s->sdbus.qbus, TYPE_SD_CARD); + carddev = qdev_create(BUS(&s->sdbus), TYPE_SD_CARD); qdev_prop_set_drive(carddev, "drive", blk, &err); object_property_set_bool(OBJECT(carddev), true, "realized", &err); if (err) { diff --git a/hw/sd/ssi-sd.c b/hw/sd/ssi-sd.c index 623d0333e8..25e1009277 100644 --- a/hw/sd/ssi-sd.c +++ b/hw/sd/ssi-sd.c @@ -249,7 +249,7 @@ static void ssi_sd_realize(SSISlave *d, Error **errp) /* Create and plug in the sd card */ /* FIXME use a qdev drive property instead of drive_get_next() */ dinfo = drive_get_next(IF_SD); - carddev = qdev_create(&s->sdbus.qbus, TYPE_SD_CARD); + carddev = qdev_create(BUS(&s->sdbus), TYPE_SD_CARD); if (dinfo) { qdev_prop_set_drive(carddev, "drive", blk_by_legacy_dinfo(dinfo), &err); } From 824755baf8901b23f14551016a930610da040ea8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Date: Tue, 28 May 2019 18:40:12 +0200 Subject: [PATCH 15/16] hw/scsi: Use the QOM BUS() macro to access BusState.qbus MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Rather than looking inside the definition of a BusState with "s->bus.qbus", use the QOM prefered style: "BUS(&s->bus)". This patch was generated using the following Coccinelle script: // Use BUS() macros to access BusState.qbus @use_bus_macro_to_access_qbus@ expression obj; identifier bus; @@ -&obj->bus.qbus +BUS(&obj->bus) Suggested-by: Peter Maydell Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Laurent Vivier Message-Id: <20190528164020.32250-3-philmd@redhat.com> Signed-off-by: Laurent Vivier --- hw/scsi/lsi53c895a.c | 2 +- hw/scsi/mptsas.c | 4 ++-- hw/scsi/virtio-scsi.c | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/hw/scsi/lsi53c895a.c b/hw/scsi/lsi53c895a.c index da7239d94f..a8b7a199f9 100644 --- a/hw/scsi/lsi53c895a.c +++ b/hw/scsi/lsi53c895a.c @@ -1860,7 +1860,7 @@ static void lsi_reg_writeb(LSIState *s, int offset, uint8_t val) } if (val & LSI_SCNTL1_RST) { if (!(s->sstat0 & LSI_SSTAT0_RST)) { - qbus_reset_all(&s->bus.qbus); + qbus_reset_all(BUS(&s->bus)); s->sstat0 |= LSI_SSTAT0_RST; lsi_script_scsi_interrupt(s, LSI_SIST0_RST, 0); } diff --git a/hw/scsi/mptsas.c b/hw/scsi/mptsas.c index 929404fb48..e800683e91 100644 --- a/hw/scsi/mptsas.c +++ b/hw/scsi/mptsas.c @@ -540,7 +540,7 @@ reply_maybe_async: break; case MPI_SCSITASKMGMT_TASKTYPE_RESET_BUS: - qbus_reset_all(&s->bus.qbus); + qbus_reset_all(BUS(&s->bus)); break; default: @@ -803,7 +803,7 @@ static void mptsas_soft_reset(MPTSASState *s) s->intr_mask = MPI_HIM_DIM | MPI_HIM_RIM; mptsas_update_interrupt(s); - qbus_reset_all(&s->bus.qbus); + qbus_reset_all(BUS(&s->bus)); s->intr_status = 0; s->intr_mask = save_mask; diff --git a/hw/scsi/virtio-scsi.c b/hw/scsi/virtio-scsi.c index 2994f0738f..12d21bbc61 100644 --- a/hw/scsi/virtio-scsi.c +++ b/hw/scsi/virtio-scsi.c @@ -696,7 +696,7 @@ static void virtio_scsi_reset(VirtIODevice *vdev) assert(!s->dataplane_started); s->resetting++; - qbus_reset_all(&s->bus.qbus); + qbus_reset_all(BUS(&s->bus)); s->resetting--; vs->sense_size = VIRTIO_SCSI_SENSE_DEFAULT_SIZE; From f1114d321246f9177072923e1c2a20e7aab82700 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Date: Tue, 28 May 2019 18:40:20 +0200 Subject: [PATCH 16/16] hw/watchdog/wdt_i6300esb: Use DEVICE() macro to access DeviceState.qdev MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Rather than looking inside the definition of a DeviceState with "s->qdev", use the QOM prefered style: "DEVICE(s)". This patch was generated using the following Coccinelle script: // Use DEVICE() macros to access DeviceState.qdev @use_device_macro_to_access_qdev@ expression obj; identifier dev; @@ -&obj->dev.qdev +DEVICE(obj) Suggested-by: Peter Maydell Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Laurent Vivier Message-Id: <20190528164020.32250-11-philmd@redhat.com> Signed-off-by: Laurent Vivier --- hw/watchdog/wdt_i6300esb.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hw/watchdog/wdt_i6300esb.c b/hw/watchdog/wdt_i6300esb.c index 1c6eddf86a..f2d1e86526 100644 --- a/hw/watchdog/wdt_i6300esb.c +++ b/hw/watchdog/wdt_i6300esb.c @@ -200,7 +200,7 @@ static void i6300esb_timer_expired(void *vp) if (d->reboot_enabled) { d->previous_reboot_flag = 1; watchdog_perform_action(); /* This reboots, exits, etc */ - i6300esb_reset(&d->dev.qdev); + i6300esb_reset(DEVICE(d)); } /* In "free running mode" we start stage 1 again. */