diff options
Diffstat (limited to 'hw')
| -rw-r--r-- | hw/char/serial.c | 12 | ||||
| -rw-r--r-- | hw/isa/isa-superio.c | 2 | ||||
| -rw-r--r-- | hw/isa/smc37c669-superio.c | 2 | ||||
| -rw-r--r-- | hw/scsi/vmw_pvscsi.c | 5 | ||||
| -rw-r--r-- | hw/virtio/Kconfig | 2 | ||||
| -rw-r--r-- | hw/xen/xen-common.c | 7 |
6 files changed, 25 insertions, 5 deletions
diff --git a/hw/char/serial.c b/hw/char/serial.c index 2ab8b69e03..c822a9ae6c 100644 --- a/hw/char/serial.c +++ b/hw/char/serial.c @@ -1043,7 +1043,6 @@ static void serial_class_init(ObjectClass *klass, void* data) dc->user_creatable = false; dc->realize = serial_realize; dc->unrealize = serial_unrealize; - dc->vmsd = &vmstate_serial; device_class_set_props(dc, serial_properties); } @@ -1113,6 +1112,16 @@ static void serial_mm_realize(DeviceState *dev, Error **errp) sysbus_init_irq(SYS_BUS_DEVICE(smm), &smm->serial.irq); } +static const VMStateDescription vmstate_serial_mm = { + .name = "serial", + .version_id = 3, + .minimum_version_id = 2, + .fields = (VMStateField[]) { + VMSTATE_STRUCT(serial, SerialMM, 0, vmstate_serial, SerialState), + VMSTATE_END_OF_LIST() + } +}; + SerialMM *serial_mm_init(MemoryRegion *address_space, hwaddr base, int regshift, qemu_irq irq, int baudbase, @@ -1162,6 +1171,7 @@ static void serial_mm_class_init(ObjectClass *oc, void *data) device_class_set_props(dc, serial_mm_properties); dc->realize = serial_mm_realize; + dc->vmsd = &vmstate_serial_mm; } static const TypeInfo serial_mm_info = { diff --git a/hw/isa/isa-superio.c b/hw/isa/isa-superio.c index c4e391916c..180a8b9625 100644 --- a/hw/isa/isa-superio.c +++ b/hw/isa/isa-superio.c @@ -5,7 +5,7 @@ * Copyright (c) 2011-2012 Andreas Färber * Copyright (c) 2018 Philippe Mathieu-Daudé * - * This code is licensed under the GNU GPLv2 and later. + * This work is licensed under the terms of the GNU GPL, version 2 or later. * See the COPYING file in the top-level directory. * SPDX-License-Identifier: GPL-2.0-or-later */ diff --git a/hw/isa/smc37c669-superio.c b/hw/isa/smc37c669-superio.c index 901a9f8e65..18287741cb 100644 --- a/hw/isa/smc37c669-superio.c +++ b/hw/isa/smc37c669-superio.c @@ -3,7 +3,7 @@ * * Copyright (c) 2018 Philippe Mathieu-Daudé * - * This code is licensed under the GNU GPLv2 and later. + * This work is licensed under the terms of the GNU GPL, version 2 or later. * See the COPYING file in the top-level directory. * SPDX-License-Identifier: GPL-2.0-or-later */ diff --git a/hw/scsi/vmw_pvscsi.c b/hw/scsi/vmw_pvscsi.c index c91352cf46..ec5bf9ea34 100644 --- a/hw/scsi/vmw_pvscsi.c +++ b/hw/scsi/vmw_pvscsi.c @@ -719,7 +719,10 @@ pvscsi_process_io(PVSCSIState *s) PVSCSIRingReqDesc descr; hwaddr next_descr_pa; - assert(s->rings_info_valid); + if (!s->rings_info_valid) { + return; + } + while ((next_descr_pa = pvscsi_ring_pop_req_descr(&s->rings)) != 0) { /* Only read after production index verification */ diff --git a/hw/virtio/Kconfig b/hw/virtio/Kconfig index d29525b36f..83122424fa 100644 --- a/hw/virtio/Kconfig +++ b/hw/virtio/Kconfig @@ -12,7 +12,7 @@ config VIRTIO_RNG config VIRTIO_IOMMU bool default y - depends on VIRTIO + depends on PCI && VIRTIO config VIRTIO_PCI bool diff --git a/hw/xen/xen-common.c b/hw/xen/xen-common.c index 15650d7f6a..a15070f7f6 100644 --- a/hw/xen/xen-common.c +++ b/hw/xen/xen-common.c @@ -19,6 +19,7 @@ #include "sysemu/runstate.h" #include "migration/misc.h" #include "migration/global_state.h" +#include "hw/boards.h" //#define DEBUG_XEN @@ -151,6 +152,8 @@ static void xen_setup_post(MachineState *ms, AccelState *accel) static int xen_init(MachineState *ms) { + MachineClass *mc = MACHINE_GET_CLASS(ms); + xen_xc = xc_interface_open(0, 0, 0); if (xen_xc == NULL) { xen_pv_printf(NULL, 0, "can't open xen interface\n"); @@ -170,6 +173,10 @@ static int xen_init(MachineState *ms) return -1; } qemu_add_vm_change_state_handler(xen_change_state_handler, NULL); + /* + * opt out of system RAM being allocated by generic code + */ + mc->default_ram_id = NULL; return 0; } |