aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJingqi Liu <jingqi.liu@intel.com>2020-04-29 16:50:10 +0800
committerPaolo Bonzini <pbonzini@redhat.com>2020-06-26 09:39:36 -0400
commit5f509751f711b54717c1be03d55d096015b1712b (patch)
tree6de91610952afc62dccf75e748e94be40a4f2b63
parentce317be98db0dfdfae1d77b77e6b2575d7c59eeb (diff)
downloadqemu-5f509751f711b54717c1be03d55d096015b1712b.zip
qemu-5f509751f711b54717c1be03d55d096015b1712b.tar.gz
qemu-5f509751f711b54717c1be03d55d096015b1712b.tar.bz2
docs/nvdimm: add description of alignment requirement of device dax
For device dax (e.g., /dev/dax0.0), the NUM of 'align=NUM' option needs to match the alignment requirement of the device dax. It must be larger than or equal to the 'align' of device dax. Reviewed-by: Joao Martins <joao.m.martins@oracle.com> Signed-off-by: Jingqi Liu <jingqi.liu@intel.com> Message-Id: <20200429085011.63752-3-jingqi.liu@intel.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
-rw-r--r--docs/nvdimm.txt10
-rw-r--r--exec.c2
2 files changed, 11 insertions, 1 deletions
diff --git a/docs/nvdimm.txt b/docs/nvdimm.txt
index 362e991..c2c6e44 100644
--- a/docs/nvdimm.txt
+++ b/docs/nvdimm.txt
@@ -132,6 +132,16 @@ address to the page size (getpagesize(2)) by default. However, some
types of backends may require an alignment different than the page
size. In that case, QEMU v2.12.0 and later provide 'align' option to
memory-backend-file to allow users to specify the proper alignment.
+For device dax (e.g., /dev/dax0.0), this alignment needs to match the
+alignment requirement of the device dax. The NUM of 'align=NUM' option
+must be larger than or equal to the 'align' of device dax.
+We can use one of the following commands to show the 'align' of device dax.
+
+ ndctl list -X
+ daxctl list -R
+
+In order to get the proper 'align' of device dax, you need to install
+the library 'libdaxctl'.
For example, device dax require the 2 MB alignment, so we can use
following QEMU command line options to use it (/dev/dax0.0) as the
diff --git a/exec.c b/exec.c
index c5ab59e..21926dc 100644
--- a/exec.c
+++ b/exec.c
@@ -2379,7 +2379,7 @@ RAMBlock *qemu_ram_alloc_from_fd(ram_addr_t size, MemoryRegion *mr,
file_align = get_file_align(fd);
if (file_align > 0 && mr && file_align > mr->align) {
error_setg(errp, "backing store align 0x%" PRIx64
- " is larger than 'align' option 0x" PRIx64,
+ " is larger than 'align' option 0x%" PRIx64,
file_align, mr->align);
return NULL;
}