Hi, I have a namespace (backed by real nvdimm h/w) configured in devdax mode: # ndctl list -N -n namespace0.0 [ { "dev":"namespace0.0", "mode":"devdax", "map":"dev", "size":16909336576, "uuid":"e5265c0a-d902-41ce-b1d1-87a78c358aa4", "chardev":"dax0.0" } ]
When I try to configure my vm using "virsh" with something like this: <memory model='nvdimm' access='shared'> <source> <path>/dev/dax0.0</path> <align unit='KiB'>2048</align> <pmem/> </source> <target> <size unit='KiB'>2097152</size> <node>0</node> </target> <alias name='nvdimm0'/> <address type='dimm' slot='0'/> </memory> I get an error while starting my vm: # virsh start fox22vm start: domain(optdata): fox22vm start: found option <domain>: fox22vm start: <domain> trying as domain NAME error: Failed to start domain fox22vm error: internal error: qemu unexpectedly closed the monitor: ftruncate: Invalid argument 2019-01-15T18:00:36.587467Z qemu-kvm: -object memory-backend-file,id=memnvdimm0,prealloc=yes,mem-path=/dev/dax0.0,share=yes,size=2147483648: unable to map backing store for guest RAM: Invalid argument I have tried to add "align unit" to my virsh xml but it does not seem to pass it onto qemu (as much as I can see from the qemu cmd line in the logs at /var/log/libvirt/qemu) Can anyone pls hint as to what possibly could be the issue ? Is this alignment related or something else ? Here are my versions: # virsh --version 4.5.0 [root@fox22hv libexec]# /usr/libexec/qemu-kvm --version QEMU emulator version 2.12.0 (qemu-kvm-rhev-2.12.0-18.el7_6.1) Copyright (c) 2003-2017 Fabrice Bellard and the QEMU Project developers # uname -a Linux fox22hv 4.19.0-1.el7.elrepo.x86_64 #1 SMP Mon Oct 22 10:40:32 EDT 2018 x86_64 x86_64 x86_64 GNU/Linux