[libvirt] [PATCH 00/14] Introduce NVDIMM support

Michal Privoznik posted 14 patches 7 years, 1 month ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/libvirt tags/patchew/cover.1487839955.git.mprivozn@redhat.com
There is a newer version of this series
docs/formatdomain.html.in                          |  70 +++++++---
docs/schemas/domaincommon.rng                      |  40 ++++--
src/conf/domain_conf.c                             | 112 +++++++++++----
src/conf/domain_conf.h                             |   4 +
src/libvirt_private.syms                           |   2 +
src/qemu/qemu_alias.c                              |  10 +-
src/qemu/qemu_capabilities.c                       |   2 +
src/qemu/qemu_capabilities.h                       |   1 +
src/qemu/qemu_cgroup.c                             |  70 ++++++++++
src/qemu/qemu_cgroup.h                             |   4 +
src/qemu/qemu_command.c                            | 152 ++++++++++++++-------
src/qemu/qemu_command.h                            |  16 ++-
src/qemu/qemu_domain.c                             | 105 +++++++++++++-
src/qemu/qemu_domain.h                             |   8 ++
src/qemu/qemu_hotplug.c                            |  42 +++++-
src/qemu/qemu_security.c                           |  56 ++++++++
src/qemu/qemu_security.h                           |   8 ++
src/security/security_dac.c                        |  76 +++++++++++
src/security/security_driver.h                     |   9 ++
src/security/security_manager.c                    |  56 ++++++++
src/security/security_manager.h                    |   7 +
src/security/security_nop.c                        |  19 +++
src/security/security_selinux.c                    |  69 ++++++++++
src/security/security_stack.c                      |  38 ++++++
tests/qemucapabilitiesdata/caps_2.6.0.x86_64.xml   |   1 +
tests/qemucapabilitiesdata/caps_2.7.0.x86_64.xml   |   1 +
tests/qemucapabilitiesdata/caps_2.8.0.x86_64.xml   |   1 +
tests/qemucapabilitiesdata/caps_2.9.0.x86_64.xml   |   1 +
.../qemuxml2argv-memory-hotplug-nvdimm-access.args |  26 ++++
.../qemuxml2argv-memory-hotplug-nvdimm-access.xml  |  49 +++++++
.../qemuxml2argv-memory-hotplug-nvdimm.args        |  26 ++++
.../qemuxml2argv-memory-hotplug-nvdimm.xml         |  56 ++++++++
tests/qemuxml2argvtest.c                           |   6 +-
.../qemuxml2xmlout-memory-hotplug-nvdimm.xml       |   1 +
tests/qemuxml2xmltest.c                            |   1 +
35 files changed, 1025 insertions(+), 120 deletions(-)
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-memory-hotplug-nvdimm-access.args
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-memory-hotplug-nvdimm-access.xml
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-memory-hotplug-nvdimm.args
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-memory-hotplug-nvdimm.xml
create mode 120000 tests/qemuxml2xmloutdata/qemuxml2xmlout-memory-hotplug-nvdimm.xml
[libvirt] [PATCH 00/14] Introduce NVDIMM support
Posted by Michal Privoznik 7 years, 1 month ago
NVDIMMs are new type of ultra fast storage that's plugged into DIMM slot and
can hold the stored info throughout reboots. After all, NV stands for
non-volatile. In virtualization world, this has an awesome advantage - less
VM_EXITs on 'disk' IO.

https://nvdimm.wiki.kernel.org/

Currently, there is no NVDIMM namespace support. I think qemu does not support
it either.

Michal Privoznik (14):
  qemu_cgroup: Only try to allow devices if devices CGroup's available
  qemuBuildMemoryBackendStr: Reorder args and update comment
  Introduce NVDIMM memory model
  qemu: Introduce QEMU_CAPS_DEVICE_NVDIMM
  qemu: Implement NVDIMM
  conf: Introduce @access to <memory/>
  qemu: Implement @access for <memory/> banks
  security_dac: Label host side of NVDIMM
  security_selinux: Label host side of NVDIMM
  security: Introduce internal APIs for memdev labelling
  secdrivers: Implement memdev relabel APIs
  qemu_hotplug: Relabel memdev
  qemu: Allow nvdimm in devices CGroups
  qemu: Namespaces for NVDIMM

 docs/formatdomain.html.in                          |  70 +++++++---
 docs/schemas/domaincommon.rng                      |  40 ++++--
 src/conf/domain_conf.c                             | 112 +++++++++++----
 src/conf/domain_conf.h                             |   4 +
 src/libvirt_private.syms                           |   2 +
 src/qemu/qemu_alias.c                              |  10 +-
 src/qemu/qemu_capabilities.c                       |   2 +
 src/qemu/qemu_capabilities.h                       |   1 +
 src/qemu/qemu_cgroup.c                             |  70 ++++++++++
 src/qemu/qemu_cgroup.h                             |   4 +
 src/qemu/qemu_command.c                            | 152 ++++++++++++++-------
 src/qemu/qemu_command.h                            |  16 ++-
 src/qemu/qemu_domain.c                             | 105 +++++++++++++-
 src/qemu/qemu_domain.h                             |   8 ++
 src/qemu/qemu_hotplug.c                            |  42 +++++-
 src/qemu/qemu_security.c                           |  56 ++++++++
 src/qemu/qemu_security.h                           |   8 ++
 src/security/security_dac.c                        |  76 +++++++++++
 src/security/security_driver.h                     |   9 ++
 src/security/security_manager.c                    |  56 ++++++++
 src/security/security_manager.h                    |   7 +
 src/security/security_nop.c                        |  19 +++
 src/security/security_selinux.c                    |  69 ++++++++++
 src/security/security_stack.c                      |  38 ++++++
 tests/qemucapabilitiesdata/caps_2.6.0.x86_64.xml   |   1 +
 tests/qemucapabilitiesdata/caps_2.7.0.x86_64.xml   |   1 +
 tests/qemucapabilitiesdata/caps_2.8.0.x86_64.xml   |   1 +
 tests/qemucapabilitiesdata/caps_2.9.0.x86_64.xml   |   1 +
 .../qemuxml2argv-memory-hotplug-nvdimm-access.args |  26 ++++
 .../qemuxml2argv-memory-hotplug-nvdimm-access.xml  |  49 +++++++
 .../qemuxml2argv-memory-hotplug-nvdimm.args        |  26 ++++
 .../qemuxml2argv-memory-hotplug-nvdimm.xml         |  56 ++++++++
 tests/qemuxml2argvtest.c                           |   6 +-
 .../qemuxml2xmlout-memory-hotplug-nvdimm.xml       |   1 +
 tests/qemuxml2xmltest.c                            |   1 +
 35 files changed, 1025 insertions(+), 120 deletions(-)
 create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-memory-hotplug-nvdimm-access.args
 create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-memory-hotplug-nvdimm-access.xml
 create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-memory-hotplug-nvdimm.args
 create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-memory-hotplug-nvdimm.xml
 create mode 120000 tests/qemuxml2xmloutdata/qemuxml2xmlout-memory-hotplug-nvdimm.xml

-- 
2.11.0

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [PATCH 00/14] Introduce NVDIMM support
Posted by Andrea Bolognani 7 years, 1 month ago
On Thu, 2017-02-23 at 10:02 +0100, Michal Privoznik wrote:
> NVDIMMs are new type of ultra fast storage that's plugged into DIMM slot and
> can hold the stored info throughout reboots. After all, NV stands for
> non-volatile. In virtualization world, this has an awesome advantage - less
> VM_EXITs on 'disk' IO.
> 
> https://nvdimm.wiki.kernel.org/
> 
> Currently, there is no NVDIMM namespace support. I think qemu does not support
> it either.

Looks to me like someone forgot to update the release
notes... ;)

-- 
Andrea Bolognani / Red Hat / Virtualization

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [PATCH 00/14] Introduce NVDIMM support
Posted by Michal Privoznik 7 years ago
On 23.02.2017 10:02, Michal Privoznik wrote:
> NVDIMMs are new type of ultra fast storage that's plugged into DIMM slot and
> can hold the stored info throughout reboots. After all, NV stands for
> non-volatile. In virtualization world, this has an awesome advantage - less
> VM_EXITs on 'disk' IO.
> 
> https://nvdimm.wiki.kernel.org/
> 
> Currently, there is no NVDIMM namespace support. I think qemu does not support
> it either.

I was wrong here. Qemu DOES support namespaces. Well, specifying the
size of namespace label store. Self-NACK, will send v2 shortly.

Michal

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list