On Mon, Jun 24, 2019 at 05:02:00AM -0400, Igor Mammedov wrote: > QEMU will crash when device-memory-region-size property is read if > ms->device_memory > wasn't initialized yet. > > Crash can be reproduced with: > $QEMU -preconfig -qmp unix:qmp_socket,server,nowait & > ./scripts/qmp/qom-get -s qmp_socket /machine.device-memory-region-size > > Instead of crashing return 0 if ms->device_memory hasn't been initialized. > > Signed-off-by: Igor Mammedov <imamm...@redhat.com>
queued, thanks! > --- > > v2: > * fix missing return value assignment > (Eduardo Habkost <ehabk...@redhat.com>) > --- > hw/i386/pc.c | 6 +++++- > 1 file changed, 5 insertions(+), 1 deletion(-) > > diff --git a/hw/i386/pc.c b/hw/i386/pc.c > index e96360b47a..552f3401e2 100644 > --- a/hw/i386/pc.c > +++ b/hw/i386/pc.c > @@ -2458,7 +2458,11 @@ pc_machine_get_device_memory_region_size(Object *obj, > Visitor *v, > Error **errp) > { > MachineState *ms = MACHINE(obj); > - int64_t value = memory_region_size(&ms->device_memory->mr); > + int64_t value = 0; > + > + if (ms->device_memory) { > + value = memory_region_size(&ms->device_memory->mr); > + } > > visit_type_int(v, name, &value, errp); > } > -- > 2.18.1