[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 1/7] Bugfix: Handle error if VM Generation ID device
From: |
Michael S. Tsirkin |
Subject: |
[Qemu-devel] [PULL 1/7] Bugfix: Handle error if VM Generation ID device not present |
Date: |
Wed, 15 Mar 2017 20:01:19 +0200 |
From: Ben Warren <address@hidden>
This was crashing due to NULL-pointer dereference
QMP Test case:
==============
(QEMU) query-vm-generation-id
{"error": {"class": "GenericError", "desc": "VM Generation ID device not
found"}}
HMP Test case:
==============
virsh # qemu-monitor-command --hmp 3 info vm-generation-id
VM Generation ID device not found
Signed-off-by: Ben Warren <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
---
hmp.c | 4 +++-
hw/acpi/vmgenid.c | 1 +
2 files changed, 4 insertions(+), 1 deletion(-)
diff --git a/hmp.c b/hmp.c
index 261843f..edb8970 100644
--- a/hmp.c
+++ b/hmp.c
@@ -2608,9 +2608,11 @@ void hmp_hotpluggable_cpus(Monitor *mon, const QDict
*qdict)
void hmp_info_vm_generation_id(Monitor *mon, const QDict *qdict)
{
- GuidInfo *info = qmp_query_vm_generation_id(NULL);
+ Error *err = NULL;
+ GuidInfo *info = qmp_query_vm_generation_id(&err);
if (info) {
monitor_printf(mon, "%s\n", info->guid);
}
+ hmp_handle_error(mon, &err);
qapi_free_GuidInfo(info);
}
diff --git a/hw/acpi/vmgenid.c b/hw/acpi/vmgenid.c
index 744f284..7a3ad17 100644
--- a/hw/acpi/vmgenid.c
+++ b/hw/acpi/vmgenid.c
@@ -248,6 +248,7 @@ GuidInfo *qmp_query_vm_generation_id(Error **errp)
Object *obj = find_vmgenid_dev();
if (!obj) {
+ error_setg(errp, "VM Generation ID device not found");
return NULL;
}
vms = VMGENID(obj);
--
MST
- [Qemu-devel] [PULL 0/7] virtio, pc: fixes, Michael S. Tsirkin, 2017/03/15
- [Qemu-devel] [PULL 2/7] virtio: guard against NULL pfn, Michael S. Tsirkin, 2017/03/15
- [Qemu-devel] [PULL 1/7] Bugfix: Handle error if VM Generation ID device not present,
Michael S. Tsirkin <=
- [Qemu-devel] [PULL 3/7] virtio: destroy region cache during reset, Michael S. Tsirkin, 2017/03/15
- [Qemu-devel] [PULL 4/7] virtio: validate address space cache during init, Michael S. Tsirkin, 2017/03/15
- [Qemu-devel] [PULL 6/7] Revert "virtio: unbreak virtio-pci with IOMMU after caching ring translations", Michael S. Tsirkin, 2017/03/15
- [Qemu-devel] [PULL 5/7] pci: introduce a bus master container, Michael S. Tsirkin, 2017/03/15
- [Qemu-devel] [PULL 7/7] virtio-pci: reset modern vq meta data, Michael S. Tsirkin, 2017/03/15
- Re: [Qemu-devel] [PULL 0/7] virtio, pc: fixes, Peter Maydell, 2017/03/15