[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH RFCv2 4/9] virtio-pmem: Prototype
From: |
Markus Armbruster |
Subject: |
Re: [Qemu-devel] [PATCH RFCv2 4/9] virtio-pmem: Prototype |
Date: |
Thu, 31 Jan 2019 19:19:28 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux) |
David Hildenbrand <address@hidden> writes:
> From: Pankaj Gupta <address@hidden>
>
> This is the current protoype of virtio-pmem. Support will require
> machine changes for the architectures that will support it, so it will
> not yet be compiled.
>
> TODO:
> - Use separate struct for tracking requests internally
> - Move request/response structs to linux headers
> - Factor out linux header sync
> - Drop debug printfs
>
> Signed-off-by: Pankaj Gupta <address@hidden>
> [ MemoryDevice/MemoryRegion changes, cleanups, addr property "memaddr",
> split up patches, unplug handler ]
> Signed-off-by: David Hildenbrand <address@hidden>
> ---
[...]
> diff --git a/include/standard-headers/linux/virtio_ids.h
> b/include/standard-headers/linux/virtio_ids.h
> index 6d5c3b2d4f..346389565a 100644
> --- a/include/standard-headers/linux/virtio_ids.h
> +++ b/include/standard-headers/linux/virtio_ids.h
> @@ -43,5 +43,6 @@
> #define VIRTIO_ID_INPUT 18 /* virtio input */
> #define VIRTIO_ID_VSOCK 19 /* virtio vsock transport */
> #define VIRTIO_ID_CRYPTO 20 /* virtio crypto */
> +#define VIRTIO_ID_PMEM 25 /* virtio pmem */
>
> #endif /* _LINUX_VIRTIO_IDS_H */
> diff --git a/qapi/misc.json b/qapi/misc.json
> index 24d20a880a..b71eca2666 100644
> --- a/qapi/misc.json
> +++ b/qapi/misc.json
> @@ -2949,16 +2949,42 @@
> }
> }
>
> +##
> +# @VirtioPMEMDeviceInfo:
> +#
> +# VirtioPMEM state information
> +#
> +# @id: device's ID
> +#
> +# @memaddr: physical address in memory, where device is mapped
> +#
> +# @size: size of memory that the device provides
> +#
> +# @memdev: memory backend linked with device
> +#
> +# Since: 4.0
> +##
This is like PCDIMMDeviceInfo less @slot, @node, @hotplugged,
@hotpluggable, and with @addr renamed to @memaddr.
Any particular reason for the rename?
> +{ 'struct': 'VirtioPMEMDeviceInfo',
> + 'data': { '*id': 'str',
> + 'memaddr': 'size',
> + 'size': 'size',
> + 'memdev': 'str'
> + }
> +}
> +
> ##
> # @MemoryDeviceInfo:
> #
> # Union containing information about a memory device
> #
> +# nvdimm is included since 2.12. virtio-pmem is included since 4.0.
> +#
Let's stick to the way we document similar things elsewhere:
# @nvdimm: since 2.12
#
# @virtio-pmem: since 4.0
#
> # Since: 2.1
> ##
> { 'union': 'MemoryDeviceInfo',
> 'data': { 'dimm': 'PCDIMMDeviceInfo',
> - 'nvdimm': 'PCDIMMDeviceInfo'
> + 'nvdimm': 'PCDIMMDeviceInfo',
> + 'virtio-pmem': 'VirtioPMEMDeviceInfo'
> }
> }
- [Qemu-devel] [PATCH RFCv2 0/9] qdev: Hotplug handler chaining + virtio-pmem, David Hildenbrand, 2019/01/23
- [Qemu-devel] [PATCH RFCv2 9/9] pc: Support for virtio-pmem-pci, David Hildenbrand, 2019/01/23
- [Qemu-devel] [PATCH RFCv2 8/9] numa: Handle virtio-pmem in NUMA stats, David Hildenbrand, 2019/01/23
- [Qemu-devel] [PATCH RFCv2 7/9] hmp: Handle virtio-pmem when printing memory device infos, David Hildenbrand, 2019/01/23
- [Qemu-devel] [PATCH RFCv2 4/9] virtio-pmem: Prototype, David Hildenbrand, 2019/01/23
- Re: [Qemu-devel] [PATCH RFCv2 4/9] virtio-pmem: Prototype,
Markus Armbruster <=
- [Qemu-devel] [PATCH RFCv2 6/9] virtio-pci: Proxy for virtio-pmem, David Hildenbrand, 2019/01/23
- [Qemu-devel] [PATCH RFCv2 5/9] virtio-pci: Allow to specify additional interfaces for the base type, David Hildenbrand, 2019/01/23
- [Qemu-devel] [PATCH RFCv2 2/9] qdev: Let machine hotplug handler to override bus hotplug handler, David Hildenbrand, 2019/01/23
- [Qemu-devel] [PATCH RFCv2 1/9] qdev: Let the hotplug_handler_unplug() caller delete the device, David Hildenbrand, 2019/01/23
- [Qemu-devel] [PATCH RFCv2 3/9] qdev: Provide qdev_get_bus_hotplug_handler(), David Hildenbrand, 2019/01/23