From: "Richard W.M. Jones" <rjones@redhat.com>
To: Stefan Hajnoczi <stefanha@gmail.com>
Cc: qemu-devel@nongnu.org, Xiao Guangrong <guangrong.xiao@linux.intel.com>
Subject: Re: [Qemu-devel] Question about vNVDIMM file format
Date: Mon, 16 May 2016 19:25:08 +0100 [thread overview]
Message-ID: <20160516182508.GQ1683@redhat.com> (raw)
In-Reply-To: <20160516165336.GD15256@stefanha-x1.localdomain>
On Mon, May 16, 2016 at 09:53:36AM -0700, Stefan Hajnoczi wrote:
> On Mon, May 16, 2016 at 04:04:01PM +0100, Richard W.M. Jones wrote:
> > I'm playing with ext4 and DAX.
> >
> > I'm using:
> >
> > -object memory-backend-file,id=mem1,share,mem-path=/var/tmp/pmem,size=4G \
> > -device nvdimm,memdev=mem1,id=nv1
> >
> > where /var/tmp/pmem is a 4 GB ext4 filesystem image (no partition
> > table). I can mount this in the guest using:
> >
> > mount -o dax /dev/pmem0 /mnt
> >
> > and everything appears to work.
> >
> > I read in the mailing list that the pmem file has some internal
> > structure for storing config data, stored in the last 128 KB of the
> > file. Is that still the case?
>
> AFAICT qemu.git/master does not support the ACPI _DSM for namespace
> configuration. That means the entire /var/tmp/pmem should be visible.
That's great, thanks both for your answers.
FWIW I was able to add support to libguestfs -- at least for the
"direct" backend where we run qemu directly. Unfortunately libvirt
does not support the vNVDIMM device yet.
I have posted the two patches needed on our mailing list. There seems
to be some delay in our mail server, so they aren't in the archives
yet:
https://www.redhat.com/archives/libguestfs/2016-May/thread.html
There are a few possible problems / questions I have:
(a) How necessary is the ACPI dependency? We disable ACPI because it
is quite slow, adding something like 150-200ms to the boot process
(every millisecond counts for us!). Because I previously never needed
ACPI, I never really looked into why this is, and it could be
something quite simple, so I'm going to look at this issue next. I
understand that NVDIMMs are not regular (eg) PCI devices, so ordinary
device probing isn't going to work, and that probably answers the
question why you need to use ACPI.
(b) Could you describe what the 3 modules (nd_btt, nd_pmem, nfit) do?
Are all 3 modules necessary in the guest kernel?
(c) I've got the root filesystem (which is actually ext2, but using
the ext4.ko driver) mounted with -o dax. What benefits / differences
should I observe? Just general reduced memory / page cache usage?
(d) If, in future, you add the namespace metadata, what tools will be
available on the host to create a packed filesystem + metadata?
Assuming that we won't be able to export just a filesystem as I am
doing now.
Rich.
--
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
virt-builder quickly builds VMs from scratch
http://libguestfs.org/virt-builder.1.html
next prev parent reply other threads:[~2016-05-16 18:25 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-05-16 15:04 [Qemu-devel] Question about vNVDIMM file format Richard W.M. Jones
2016-05-16 16:53 ` Stefan Hajnoczi
2016-05-16 18:25 ` Richard W.M. Jones [this message]
2016-05-18 7:04 ` Xiao Guangrong
2016-05-18 8:11 ` Zhang, Haozhong
2016-05-18 10:50 ` Richard W.M. Jones
2016-05-18 17:36 ` Richard W.M. Jones
2016-05-16 17:39 ` Xiao Guangrong
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20160516182508.GQ1683@redhat.com \
--to=rjones@redhat.com \
--cc=guangrong.xiao@linux.intel.com \
--cc=qemu-devel@nongnu.org \
--cc=stefanha@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).