[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [qemu-s390x] [Qemu-devel] [PATCH RFCv2 7/9] hmp: Handle virtio-pmem
From: |
Markus Armbruster |
Subject: |
Re: [qemu-s390x] [Qemu-devel] [PATCH RFCv2 7/9] hmp: Handle virtio-pmem when printing memory device infos |
Date: |
Thu, 31 Jan 2019 19:23:54 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux) |
"Dr. David Alan Gilbert" <address@hidden> writes:
> * David Hildenbrand (address@hidden) wrote:
>> Print the memory device info just like for PCDIMM/NVDIMM.
>>
>> Signed-off-by: David Hildenbrand <address@hidden>
>> ---
>> hmp.c | 27 +++++++++++++++------------
>> 1 file changed, 15 insertions(+), 12 deletions(-)
>>
>> diff --git a/hmp.c b/hmp.c
>> index 8da5fd8760..25c32e0810 100644
>> --- a/hmp.c
>> +++ b/hmp.c
>> @@ -2553,6 +2553,7 @@ void hmp_info_memory_devices(Monitor *mon, const QDict
>> *qdict)
>> Error *err = NULL;
>> MemoryDeviceInfoList *info_list = qmp_query_memory_devices(&err);
>> MemoryDeviceInfoList *info;
>> + VirtioPMEMDeviceInfo *vpi;
>> MemoryDeviceInfo *value;
>> PCDIMMDeviceInfo *di;
>>
>> @@ -2562,19 +2563,9 @@ void hmp_info_memory_devices(Monitor *mon, const
>> QDict *qdict)
>> if (value) {
>> switch (value->type) {
>> case MEMORY_DEVICE_INFO_KIND_DIMM:
>> - di = value->u.dimm.data;
>> - break;
>> -
>> case MEMORY_DEVICE_INFO_KIND_NVDIMM:
>> - di = value->u.nvdimm.data;
>> - break;
>> -
>> - default:
>> - di = NULL;
>> - break;
>> - }
>> -
>> - if (di) {
>> + di = value->type == MEMORY_DEVICE_INFO_KIND_DIMM ?
>> + value->u.dimm.data : value->u.nvdimm.data;
>> monitor_printf(mon, "Memory device [%s]: \"%s\"\n",
>> MemoryDeviceInfoKind_str(value->type),
>> di->id ? di->id : "");
>> @@ -2587,6 +2578,18 @@ void hmp_info_memory_devices(Monitor *mon, const
>> QDict *qdict)
>> di->hotplugged ? "true" : "false");
>> monitor_printf(mon, " hotpluggable: %s\n",
>> di->hotpluggable ? "true" : "false");
>> + break;
>> + case MEMORY_DEVICE_INFO_KIND_VIRTIO_PMEM:
>> + vpi = value->u.virtio_pmem.data;
>> + monitor_printf(mon, "Memory device [%s]: \"%s\"\n",
>> + MemoryDeviceInfoKind_str(value->type),
>> + vpi->id ? vpi->id : "");
>> + monitor_printf(mon, " memaddr: 0x%" PRIx64 "\n",
>> vpi->memaddr);
>> + monitor_printf(mon, " size: %" PRIu64 "\n", vpi->size);
>> + monitor_printf(mon, " memdev: %s\n", vpi->memdev);
>> + break;
>> + default:
>> + g_assert_not_reached();
>
>
> Although I'd prefer if that assert was replaced by a print
> saying it was an unknown type.
I would not. If we reach this, something must have scribbled over
value->type and who knows what else. Continuing is unsafe. Looks like
a textbook use of assertions to me.
> Reviewed-by: Dr. David Alan Gilbert <address@hidden>
>
>> }
>> }
>> }
>> --
>> 2.17.2
>>
> --
> Dr. David Alan Gilbert / address@hidden / Manchester, UK
- [qemu-s390x] [PATCH RFCv2 0/9] qdev: Hotplug handler chaining + virtio-pmem, David Hildenbrand, 2019/01/23
- [qemu-s390x] [PATCH RFCv2 9/9] pc: Support for virtio-pmem-pci, David Hildenbrand, 2019/01/23
- [qemu-s390x] [PATCH RFCv2 8/9] numa: Handle virtio-pmem in NUMA stats, David Hildenbrand, 2019/01/23
- [qemu-s390x] [PATCH RFCv2 7/9] hmp: Handle virtio-pmem when printing memory device infos, David Hildenbrand, 2019/01/23
- [qemu-s390x] [PATCH RFCv2 5/9] virtio-pci: Allow to specify additional interfaces for the base type, David Hildenbrand, 2019/01/23
- [qemu-s390x] [PATCH RFCv2 6/9] virtio-pci: Proxy for virtio-pmem, David Hildenbrand, 2019/01/23
- [qemu-s390x] [PATCH RFCv2 2/9] qdev: Let machine hotplug handler to override bus hotplug handler, David Hildenbrand, 2019/01/23
- [qemu-s390x] [PATCH RFCv2 4/9] virtio-pmem: Prototype, David Hildenbrand, 2019/01/23
- [qemu-s390x] [PATCH RFCv2 3/9] qdev: Provide qdev_get_bus_hotplug_handler(), David Hildenbrand, 2019/01/23