From: Taylor Stark <>
Changes from v2 [1]:
- Incorporated suggestions from Cornelia Huck on rewording driver initialization.
Changes from v1:
- Added in a feature bit (VIRTIO_PMEM_F_SHMEM_REGION) for controlling how the
device indicates the guest physical address ranges to the driver. This feature
directly affects control flow of the driver, since it seemed weird to have
the driver indicate support for shared memory regions, and then needing
to include an enum (or similar) informing the driver how the device
indicated guest physical address ranges. If devices want to indicate the
ranges as guest absolute addresses, they can skip negotiating the feature.
- The linux driver implementation has been updated and tested, but I'm holding
off on posting the patches to get some feedback on the new approach.
- Moved some changes to proper subsections (normative subsections).
[1] https://lists.oasis-open.org/archives/virtio-comment/202107/msg00145.html
---
This patch updates the virtio-pmem spec to add support for describing the pmem
region as a shared memory region. This is required to support virtio-pmem in
Hyper-V, since Hyper-V only allows PCI devices to operate on memory ranges
defined via BARs. When using the virtio PCI transport, shared memory regions
are described via PCI BARs.
As virtio-pmem hasn't been added to the virtio spec yet (see this issue [1]),
this patch is based off the RFC spec [2]. The linux driver implementation has
been posted at [3].
[1] https://github.com/oasis-tcs/virtio-spec/issues/78
[2] https://lists.oasis-open.org/archives/virtio-dev/201903/msg00083.html
[3] https://lore.kernel.org/nvdimm/20210715223505.GA29329@linuxonhyperv3.guj3yctzbm1etfxqx2vob5hsef.xx.internal.cloudapp.net
Taylor Stark (1):
virtio-pmem: Support describing pmem as shared memory region
conformance.tex | 1 +
virtio-pmem.tex | 34 +++++++++++++++++++++++++++++-----
2 files changed, 30 insertions(+), 5 deletions(-)
--
2.31.0.vfs.0.1