From nobody Mon Feb 9 21:19:59 2026
Delivered-To: importer@patchew.org
Received-SPF: pass (zoho.com: domain of redhat.com designates 209.132.183.28
as permitted sender) client-ip=209.132.183.28;
envelope-from=libvir-list-bounces@redhat.com; helo=mx1.redhat.com;
Authentication-Results: mx.zohomail.com;
spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as
permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com;
dmarc=fail(p=none dis=none) header.from=intel.com
Return-Path:
Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by
mx.zohomail.com
with SMTPS id 1545297307511509.3846359992857;
Thu, 20 Dec 2018 01:15:07 -0800 (PST)
Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com
[10.5.11.13])
(using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))
(No client certificate requested)
by mx1.redhat.com (Postfix) with ESMTPS id CB86076524;
Thu, 20 Dec 2018 09:15:04 +0000 (UTC)
Received: from colo-mx.corp.redhat.com
(colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21])
by smtp.corp.redhat.com (Postfix) with ESMTPS id 6F35118223;
Thu, 20 Dec 2018 09:15:04 +0000 (UTC)
Received: from lists01.pubmisc.prod.ext.phx2.redhat.com
(lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33])
by colo-mx.corp.redhat.com (Postfix) with ESMTP id D7AABC584;
Thu, 20 Dec 2018 09:15:03 +0000 (UTC)
Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com
[10.5.11.11])
by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP
id wBK9EsNT030365 for ;
Thu, 20 Dec 2018 04:14:54 -0500
Received: by smtp.corp.redhat.com (Postfix)
id 8841C604DD; Thu, 20 Dec 2018 09:14:54 +0000 (UTC)
Received: from mx1.redhat.com (ext-mx07.extmail.prod.ext.phx2.redhat.com
[10.5.110.31])
by smtp.corp.redhat.com (Postfix) with ESMTPS id 7D97B60559
for ; Thu, 20 Dec 2018 09:14:52 +0000 (UTC)
Received: from mga09.intel.com (mga09.intel.com [134.134.136.24])
(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
(No client certificate requested)
by mx1.redhat.com (Postfix) with ESMTPS id 60376C070E39
for ; Thu, 20 Dec 2018 09:14:51 +0000 (UTC)
Received: from fmsmga001.fm.intel.com ([10.253.24.23])
by orsmga102.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384;
20 Dec 2018 01:14:50 -0800
Received: from zly-optiplex-9020.bj.intel.com ([10.238.135.151])
by fmsmga001.fm.intel.com with ESMTP; 20 Dec 2018 01:14:49 -0800
X-Amp-Result: SKIPPED(no attachment in message)
X-Amp-File-Uploaded: False
X-ExtLoop1: 1
X-IronPort-AV: E=Sophos;i="5.56,376,1539673200"; d="scan'208";a="131518402"
From: Luyao Zhong
To: libvir-list@redhat.com
Date: Thu, 20 Dec 2018 17:14:42 +0800
Message-Id: <1545297290-25463-4-git-send-email-luyao.zhong@intel.com>
In-Reply-To: <1545297290-25463-1-git-send-email-luyao.zhong@intel.com>
References: <1545297290-25463-1-git-send-email-luyao.zhong@intel.com>
X-Greylist: Sender passed SPF test, Sender IP whitelisted by DNSRBL, ACL 216
matched, not delayed by milter-greylist-4.5.16 (mx1.redhat.com
[10.5.110.31]); Thu, 20 Dec 2018 09:14:51 +0000 (UTC)
X-Greylist: inspected by milter-greylist-4.5.16 (mx1.redhat.com
[10.5.110.31]);
Thu, 20 Dec 2018 09:14:51 +0000 (UTC) for IP:'134.134.136.24'
DOMAIN:'mga09.intel.com' HELO:'mga09.intel.com'
FROM:'luyao.zhong@intel.com' RCPT:''
X-RedHat-Spam-Score: -5.001 (RCVD_IN_DNSWL_HI,
SPF_PASS) 134.134.136.24 mga09.intel.com 134.134.136.24
mga09.intel.com
X-Scanned-By: MIMEDefang 2.78 on 10.5.110.31
X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11
X-loop: libvir-list@redhat.com
Subject: [libvirt] [PATCH v5 03/11] nvdimm: introduce 'readonly' element
into xml for NVDIMM memory
X-BeenThere: libvir-list@redhat.com
X-Mailman-Version: 2.1.12
Precedence: junk
List-Id: Development discussions about the libvirt library & tools
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
MIME-Version: 1.0
Content-Transfer-Encoding: quoted-printable
Sender: libvir-list-bounces@redhat.com
Errors-To: libvir-list-bounces@redhat.com
X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13
X-Greylist: Sender IP whitelisted,
not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.26]);
Thu, 20 Dec 2018 09:15:05 +0000 (UTC)
Content-Type: text/plain; charset="utf-8"
The 'readonly' option allows users to mark vNVDIMM read-only:
...
/dev/dax0.040940
...
Signed-off-by: Luyao Zhong
Reviewed-by: John Ferlan
---
docs/formatdomain.html.in | 45 ++++++++++++-----
docs/schemas/domaincommon.rng | 5 ++
src/conf/domain_conf.c | 12 +++++
src/conf/domain_conf.h | 1 +
.../memory-hotplug-nvdimm-readonly.xml | 58 ++++++++++++++++++=
++++
.../memory-hotplug-nvdimm-readonly.xml | 1 +
tests/qemuxml2xmltest.c | 1 +
7 files changed, 111 insertions(+), 12 deletions(-)
create mode 100644 tests/qemuxml2argvdata/memory-hotplug-nvdimm-readonly.x=
ml
create mode 120000 tests/qemuxml2xmloutdata/memory-hotplug-nvdimm-readonly=
.xml
diff --git a/docs/formatdomain.html.in b/docs/formatdomain.html.in
index 0781f24..2ca7a46 100644
--- a/docs/formatdomain.html.in
+++ b/docs/formatdomain.html.in
@@ -8331,6 +8331,7 @@ qemu-kvm -net nic,model=3D? /dev/null
<label>
<size unit=3D'KiB'>128</size>
</label>
+ <readonly/>
</target>
</memory>
</devices>
@@ -8454,19 +8455,39 @@ qemu-kvm -net nic,model=3D? /dev/null
NUMA nodes configured.
- For NVDIMM type devices one can optionally use
- label and its subelement size
- to configure the size of namespaces label storage
- within the NVDIMM module. The size element
- has usual meaning described
- here.
- For QEMU domains the following restrictions apply:
+ Besides, the following optional elements can be provided as well=
for
+ NVDIMM type devices:
-
-
the minimum label size is 128KiB,
-
the remaining size (total-size - label-size) has to be align=
ed to
- 4KiB
-
+
+
+
label
+
+
+ For NVDIMM type devices one can optionally use
+ label and its subelement size
+ to configure the size of namespaces label storage
+ within the NVDIMM module. The size element
+ has usual meaning described
+ here.
+ For QEMU domains the following restrictions apply:
+
+
+
the minimum label size is 128KiB,
+
the remaining size (total-size - label-size) will be ali=
gned to
+ 4KiB as default.
+
+
+
+
readonly
+
+
+ The readonly element can be used to mark vNVDIM=
M read-only.
+ Currently, only real NVDIMM device backend can guarantee the=
guest write
+ persistence, so please set readonly when using =
other types
+ of backends. Since 5.0.0
+