diff options
authorJérôme Glisse <>2019-03-21 20:30:58 -0400
committerJérôme Glisse <>2019-03-21 21:10:00 -0400
commit7aebed5617920d93b95c77ff2787529a25122757 (patch)
parenteebd4f3095290a16ebc03182e2d3ab5dfa7b05ec (diff)
COVER LETTER ODP-v2hmm-odp-v2
Signed-off-by: Jérôme Glisse <>
1 files changed, 49 insertions, 0 deletions
diff --git a/cover-letter b/cover-letter
new file mode 100644
index 000000000000..907dd50f08fc
--- /dev/null
+++ b/cover-letter
@@ -0,0 +1,49 @@
+This is just a rebase with minor changes and better comments in the code.
+Previous cover letter (slightly improved):
+This patchset convert RDMA ODP to use HMM underneath this is motivated
+by stronger code sharing for same feature (share virtual memory SVM or
+Share Virtual Address SVA) and also stronger integration with mm code to
+achieve that. It depends on HMM patchset [1].
+Moreover they are some features of HMM in the works like peer to peer
+support, fast CPU page table snapshot, fast IOMMU mapping update ...
+It will be easier for RDMA devices with ODP to leverage those if they
+use HMM underneath.
+Quick summary of what HMM is:
+ HMM is a toolbox for device driver to implement software support for
+ Share Virtual Memory (SVM). Not only it provides helpers to mirror a
+ process address space on a device (hmm_mirror). It also provides
+ helper to allow to use device memory to back regular valid virtual
+ address of a process (any valid mmap that is not an mmap of a device
+ or a DAX mapping). They are two kinds of device memory. Private memory
+ that is not accessible to CPU because it does not have all the expected
+ properties (this is for all PCIE devices) or public memory which can
+ also be access by CPU without restriction (with OpenCAPI or CCIX or
+ similar cache-coherent and atomic inter-connect).
+ Device driver can use each of HMM tools separatly. You do not have to
+ use all the tools it provides.
+For RDMA device i do not expect a need to use the device memory support
+of HMM. This device memory support is geared toward accelerator like GPU.
+You can find a branch [1] with all the prerequisite in. This patch is on
+top of 5.1rc1+ but i can rebase it on any specific branch once HMM pre-
+requisite is upstream.
+Cc: Jason Gunthorpe <>
+Cc: Leon Romanovsky <>
+Cc: Doug Ledford <>
+Cc: Artemy Kovalyov <>
+Cc: Moni Shoua <>,
+Cc: Mike Marciniszyn <>
+Cc: Kaike Wan <>
+Cc: Dennis Dalessandro <>