All of lore.kernel.org
 help / color / mirror / Atom feed
* [RFC KERNEL PATCH 0/2] Add Dom0 NVDIMM support for Xen
@ 2016-10-10  0:35 ` Haozhong Zhang
  0 siblings, 0 replies; 142+ messages in thread
From: Haozhong Zhang @ 2016-10-10  0:35 UTC (permalink / raw)
  To: linux-nvdimm, xen-devel
  Cc: Juergen Gross, Xiao Guangrong, Andrew Morton, Arnd Bergmann,
	linux-kernel, Stefano Stabellini, David Vrabel, Boris Ostrovsky

Overview
========
This RFC kernel patch series along with corresponding patch series of
Xen, QEMU and ndctl implements Xen vNVDIMM, which can map the host
NVDIMM devices to Xen HVM domU as vNVDIMM devices.

Xen hypervisor does not include an NVDIMM driver, so it needs the
assistance from the driver in Dom0 Linux kernel to manage NVDIMM
devices. We currently only supports NVDIMM devices in pmem mode.

Design and Implementation
=========================
The complete design can be found at
  https://lists.xenproject.org/archives/html/xen-devel/2016-07/msg01921.html.

All patch series can be found at
  Xen:          https://github.com/hzzhan9/xen.git nvdimm-rfc-v1
  QEMU:         https://github.com/hzzhan9/qemu.git xen-nvdimm-rfc-v1
  Linux kernel: https://github.com/hzzhan9/nvdimm.git xen-nvdimm-rfc-v1
  ndctl:        https://github.com/hzzhan9/ndctl.git pfn-xen-rfc-v1

Xen hypervisor needs assistance from Dom0 Linux kernel for following tasks:
1) Reserve an area on NVDIMM devices for Xen hypervisor to place
   memory management data structures, i.e. frame table and M2P table.
2) Report SPA ranges of NVDIMM devices and the reserved area to Xen
   hypervisor.

For 1), Patch 1 implements a new mode PFN_MODE_XEN to pfn devices, which
make the reservation for Xen hypervisor.

For 2), Patch 2 uses a new Xen hypercall to report the address
information of pfn devices in PFN_MODE_XEN.

How to test
===========
Please refer to the cover letter of Xen patch series
"[RFC XEN PATCH 00/16] Add vNVDIMM support to HVM domains".


Haozhong Zhang (2):
  nvdimm: add PFN_MODE_XEN to pfn device for Xen usage
  xen, nvdimm: report pfn devices in PFN_MODE_XEN to Xen hypervisor

 drivers/nvdimm/namespace_devs.c  |  2 ++
 drivers/nvdimm/nd.h              |  7 +++++
 drivers/nvdimm/pfn_devs.c        | 37 +++++++++++++++++++++---
 drivers/nvdimm/pmem.c            | 61 ++++++++++++++++++++++++++++++++++++++--
 drivers/xen/Makefile             |  2 +-
 drivers/xen/pmem.c               | 53 ++++++++++++++++++++++++++++++++++
 include/linux/pfn_t.h            |  2 ++
 include/xen/interface/platform.h | 13 +++++++++
 include/xen/pmem.h               | 32 +++++++++++++++++++++
 9 files changed, 201 insertions(+), 8 deletions(-)
 create mode 100644 drivers/xen/pmem.c
 create mode 100644 include/xen/pmem.h

-- 
2.10.1

_______________________________________________
Linux-nvdimm mailing list
Linux-nvdimm@lists.01.org
https://lists.01.org/mailman/listinfo/linux-nvdimm

^ permalink raw reply	[flat|nested] 142+ messages in thread

end of thread, other threads:[~2016-10-20 22:03 UTC | newest]

Thread overview: 142+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-10-10  0:35 [RFC KERNEL PATCH 0/2] Add Dom0 NVDIMM support for Xen Haozhong Zhang
2016-10-10  0:35 ` Haozhong Zhang
2016-10-10  0:35 ` [RFC KERNEL PATCH 1/2] nvdimm: add PFN_MODE_XEN to pfn device for Xen usage Haozhong Zhang
2016-10-10  0:35   ` Haozhong Zhang
2016-10-10  0:35 ` Haozhong Zhang
2016-10-10  0:35 ` [RFC KERNEL PATCH 2/2] xen, nvdimm: report pfn devices in PFN_MODE_XEN to Xen hypervisor Haozhong Zhang
2016-10-10  0:35   ` Haozhong Zhang
2016-10-10  0:35 ` Haozhong Zhang
2016-10-10  3:45 ` [RFC KERNEL PATCH 0/2] Add Dom0 NVDIMM support for Xen Dan Williams
2016-10-10  3:45 ` Dan Williams
2016-10-10  3:45   ` Dan Williams
2016-10-10  6:32   ` Haozhong Zhang
2016-10-10  6:32     ` Haozhong Zhang
2016-10-10 16:24     ` Dan Williams
2016-10-10 16:24     ` Dan Williams
2016-10-10 16:24       ` Dan Williams
2016-10-11  7:11       ` Haozhong Zhang
2016-10-11  7:11         ` Haozhong Zhang
2016-10-11  7:11       ` Haozhong Zhang
2016-10-10  6:32   ` Haozhong Zhang
2016-10-10 16:43 ` [Xen-devel] " Andrew Cooper
2016-10-10 16:43   ` Andrew Cooper
2016-10-11  5:52   ` Haozhong Zhang
2016-10-11  5:52   ` [Xen-devel] " Haozhong Zhang
2016-10-11  5:52     ` Haozhong Zhang
2016-10-11 18:37     ` Andrew Cooper
2016-10-11 18:37       ` Andrew Cooper
2016-10-11 18:45       ` Konrad Rzeszutek Wilk
     [not found]       ` <de62aa59-37e0-b01f-1617-6fc8f6fb3620-Sxgqhf6Nn4DQT0dZR+AlfA@public.gmane.org>
2016-10-11 18:45         ` [Xen-devel] " Konrad Rzeszutek Wilk
2016-10-11 18:45           ` Konrad Rzeszutek Wilk
2016-10-11 18:48         ` Konrad Rzeszutek Wilk
2016-10-11 18:48           ` Konrad Rzeszutek Wilk
2016-10-11 18:48       ` Konrad Rzeszutek Wilk
2016-10-11 18:37     ` Andrew Cooper
2016-10-11 13:08   ` [Xen-devel] " Jan Beulich
2016-10-11 13:08     ` Jan Beulich
2016-10-11 15:53     ` Dan Williams
2016-10-11 15:53     ` [Xen-devel] " Dan Williams
2016-10-11 15:53       ` Dan Williams
2016-10-11 16:58       ` Konrad Rzeszutek Wilk
2016-10-11 16:58       ` [Xen-devel] " Konrad Rzeszutek Wilk
2016-10-11 16:58         ` Konrad Rzeszutek Wilk
2016-10-11 17:51         ` Dan Williams
2016-10-11 17:51           ` Dan Williams
2016-10-11 18:15           ` Andrew Cooper
2016-10-11 18:15             ` Andrew Cooper
2016-10-11 18:42             ` Konrad Rzeszutek Wilk
2016-10-11 18:42             ` [Xen-devel] " Konrad Rzeszutek Wilk
2016-10-11 18:42               ` Konrad Rzeszutek Wilk
2016-10-11 19:43               ` Konrad Rzeszutek Wilk
2016-10-11 19:43                 ` Konrad Rzeszutek Wilk
2016-10-11 19:43               ` Konrad Rzeszutek Wilk
2016-10-11 18:15           ` Andrew Cooper
2016-10-11 18:33           ` [Xen-devel] " Konrad Rzeszutek Wilk
2016-10-11 18:33             ` Konrad Rzeszutek Wilk
2016-10-11 19:28             ` Dan Williams
2016-10-11 19:28               ` Dan Williams
2016-10-11 19:48               ` Konrad Rzeszutek Wilk
2016-10-11 19:48               ` [Xen-devel] " Konrad Rzeszutek Wilk
2016-10-11 19:48                 ` Konrad Rzeszutek Wilk
2016-10-11 20:17                 ` Dan Williams
2016-10-12 10:33                   ` Haozhong Zhang
2016-10-12 10:33                     ` Haozhong Zhang
2016-10-12 11:32                     ` Jan Beulich
2016-10-12 11:32                     ` [Xen-devel] " Jan Beulich
2016-10-12 11:32                       ` Jan Beulich
2016-10-12 14:58                       ` Haozhong Zhang
2016-10-12 14:58                       ` [Xen-devel] " Haozhong Zhang
2016-10-12 14:58                         ` Haozhong Zhang
2016-10-12 15:39                         ` Jan Beulich
2016-10-12 15:39                         ` [Xen-devel] " Jan Beulich
2016-10-12 15:39                           ` Jan Beulich
2016-10-12 15:42                           ` Dan Williams
2016-10-12 15:42                             ` Dan Williams
2016-10-12 16:01                             ` Jan Beulich
2016-10-12 16:01                               ` Jan Beulich
2016-10-12 16:19                               ` Dan Williams
2016-10-12 16:19                               ` [Xen-devel] " Dan Williams
2016-10-12 16:19                                 ` Dan Williams
2016-10-13  8:34                                 ` Jan Beulich
2016-10-13  8:34                                   ` Jan Beulich
2016-10-13  8:53                                   ` Haozhong Zhang
2016-10-13  8:53                                   ` [Xen-devel] " Haozhong Zhang
2016-10-13  8:53                                     ` Haozhong Zhang
2016-10-13  9:08                                     ` Jan Beulich
2016-10-13  9:08                                       ` Jan Beulich
2016-10-13 15:40                                       ` Dan Williams
2016-10-13 15:40                                       ` [Xen-devel] " Dan Williams
2016-10-13 15:40                                         ` Dan Williams
2016-10-13 16:01                                         ` Andrew Cooper
2016-10-13 16:01                                         ` [Xen-devel] " Andrew Cooper
2016-10-13 16:01                                           ` Andrew Cooper
2016-10-13 18:59                                           ` Dan Williams
2016-10-13 18:59                                           ` [Xen-devel] " Dan Williams
2016-10-13 18:59                                             ` Dan Williams
2016-10-13 19:33                                             ` Andrew Cooper
2016-10-13 19:33                                               ` Andrew Cooper
2016-10-14  7:08                                               ` Haozhong Zhang
2016-10-14  7:08                                                 ` Haozhong Zhang
2016-10-14 12:18                                                 ` Andrew Cooper
2016-10-14 12:18                                                   ` Andrew Cooper
2016-10-20  9:14                                                   ` Haozhong Zhang
2016-10-20  9:14                                                   ` [Xen-devel] " Haozhong Zhang
2016-10-20  9:14                                                     ` Haozhong Zhang
2016-10-20 21:46                                                     ` Andrew Cooper
2016-10-20 21:46                                                     ` [Xen-devel] " Andrew Cooper
2016-10-20 21:46                                                       ` Andrew Cooper
2016-10-14 12:18                                                 ` Andrew Cooper
2016-10-14  7:08                                               ` Haozhong Zhang
2016-10-13 19:33                                             ` Andrew Cooper
2016-10-14 10:03                                         ` [Xen-devel] " Jan Beulich
2016-10-14 10:03                                           ` Jan Beulich
2016-10-14 10:03                                         ` Jan Beulich
2016-10-13 15:46                                       ` Haozhong Zhang
2016-10-13 15:46                                       ` [Xen-devel] " Haozhong Zhang
2016-10-13 15:46                                         ` Haozhong Zhang
2016-10-14 10:16                                         ` Jan Beulich
2016-10-14 10:16                                         ` [Xen-devel] " Jan Beulich
2016-10-14 10:16                                           ` Jan Beulich
2016-10-20  9:15                                           ` Haozhong Zhang
2016-10-20  9:15                                             ` Haozhong Zhang
2016-10-20  9:15                                           ` Haozhong Zhang
2016-10-13  9:08                                     ` Jan Beulich
2016-10-13  9:08                                     ` [Xen-devel] " Haozhong Zhang
2016-10-13  9:08                                       ` Haozhong Zhang
2016-10-13  9:08                                     ` Haozhong Zhang
2016-10-13  8:34                                 ` Jan Beulich
2016-10-12 16:01                             ` Jan Beulich
2016-10-12 15:42                           ` Dan Williams
2016-10-12 10:33                   ` Haozhong Zhang
2016-10-11 20:17                 ` Dan Williams
2016-10-11 20:18                 ` Andrew Cooper
2016-10-11 20:18                 ` [Xen-devel] " Andrew Cooper
2016-10-11 20:18                   ` Andrew Cooper
2016-10-11 19:28             ` Dan Williams
2016-10-11 18:33           ` Konrad Rzeszutek Wilk
2016-10-11 17:51         ` Dan Williams
2016-10-12  7:25       ` Jan Beulich
2016-10-12  7:25       ` [Xen-devel] " Jan Beulich
2016-10-12  7:25         ` Jan Beulich
2016-10-11 13:08   ` Jan Beulich
2016-10-10 16:43 ` Andrew Cooper

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.