All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ross Zwisler <ross.zwisler-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
To: Dan Williams <dan.j.williams-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
Cc: Yumei Huang <yuhuang-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>,
	Xiao Guangrong
	<guangrong.xiao-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>,
	KVM <kvm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	"linux-nvdimm-hn68Rpc1hR1g9hUCZPvPmw@public.gmane.org"
	<linux-nvdimm-hn68Rpc1hR1g9hUCZPvPmw@public.gmane.org>,
	LKML <linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	"qemu-devel-qX2TKyscuCcdnm+yROfE0A@public.gmane.org"
	<qemu-devel-qX2TKyscuCcdnm+yROfE0A@public.gmane.org>,
	Linux ACPI <linux-acpi-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	Stefan Hajnoczi
	<stefanha-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
Subject: Re: DAX can not work on virtual nvdimm device
Date: Fri, 19 Aug 2016 12:30:47 -0600	[thread overview]
Message-ID: <20160819183047.GA7216@linux.intel.com> (raw)
In-Reply-To: <CAPcyv4hVgi6Hw8Beg=Nt78+U0QNJN9mBGWEp3V6bg86NaM3Q6Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>

On Fri, Aug 19, 2016 at 07:59:29AM -0700, Dan Williams wrote:
> On Fri, Aug 19, 2016 at 4:19 AM, Xiao Guangrong
> <guangrong.xiao-VuQAYsv1563Yd54FQh9/CA@public.gmane.org> wrote:
> >
> > Hi Dan,
> >
> > Recently, Redhat reported that nvml test suite failed on QEMU/KVM,
> > more detailed info please refer to:
> >    https://bugzilla.redhat.com/show_bug.cgi?id=1365721
> >
> > The reason for this bug is that the memory region created by mmap()
> > on the dax-based file was gone so that the region can not be found
> > in /proc/self/smaps during the runtime.
> >
> > This is a simple way to trigger this issue:
> >    mount -o dax /dev/pmem0 /mnt/pmem/
> >    vim /mnt/pmem/xxx
> > then 'vim' is crashed due to segment fault.
> >
> > This bug can be reproduced on your tree, the top commit is
> > 10d7902fa0e82b (dax: unmap/truncate on device shutdown), the kernel
> > configure file is attached.
> >
> > Your thought or comment is highly appreciated.
> 
> I'm going to be offline until Tuesday, but I will investigate when I'm
> back.  In the meantime if Ross or Vishal had an opportunity to take a
> look I wouldn't say "no" :).

I haven't been able to reproduce this vim segfault.  I'm using QEMU v2.6.0,
and the kernel commit you mentioned, and your kernel config.

Here's my QEMU command line:

sudo ~/qemu/bin/qemu-system-x86_64 /var/lib/libvirt/images/alara.qcow2 \
-machine pc,nvdimm -m 8G,maxmem=100G,slots=100  -object \
memory-backend-file,id=mem1,share,mem-path=/dev/pmem0,size=8G -device \
nvdimm,memdev=mem1,id=nv1 -smp 6 -machine pc,accel=kvm 

With this I'm able to mkfs the guest's /dev/pmem0, mount it with -o dax, and
write a file with vim.

Can you reproduce your results with a pmem device created via a memmap kernel
command line parameter in the guest?  You'll need to update your kernel
config to enable CONFIG_X86_PMEM_LEGACY and CONFIG_X86_PMEM_LEGACY_DEVICE.

WARNING: multiple messages have this Message-ID (diff)
From: Ross Zwisler <ross.zwisler@linux.intel.com>
To: Dan Williams <dan.j.williams@intel.com>
Cc: Yumei Huang <yuhuang@redhat.com>,
	Xiao Guangrong <guangrong.xiao@linux.intel.com>,
	KVM <kvm@vger.kernel.org>,
	"linux-nvdimm@lists.01.org" <linux-nvdimm@lists.01.org>,
	LKML <linux-kernel@vger.kernel.org>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
	Linux ACPI <linux-acpi@vger.kernel.org>,
	Stefan Hajnoczi <stefanha@redhat.com>
Subject: Re: DAX can not work on virtual nvdimm device
Date: Fri, 19 Aug 2016 12:30:47 -0600	[thread overview]
Message-ID: <20160819183047.GA7216@linux.intel.com> (raw)
In-Reply-To: <CAPcyv4hVgi6Hw8Beg=Nt78+U0QNJN9mBGWEp3V6bg86NaM3Q6Q@mail.gmail.com>

On Fri, Aug 19, 2016 at 07:59:29AM -0700, Dan Williams wrote:
> On Fri, Aug 19, 2016 at 4:19 AM, Xiao Guangrong
> <guangrong.xiao@linux.intel.com> wrote:
> >
> > Hi Dan,
> >
> > Recently, Redhat reported that nvml test suite failed on QEMU/KVM,
> > more detailed info please refer to:
> >    https://bugzilla.redhat.com/show_bug.cgi?id=1365721
> >
> > The reason for this bug is that the memory region created by mmap()
> > on the dax-based file was gone so that the region can not be found
> > in /proc/self/smaps during the runtime.
> >
> > This is a simple way to trigger this issue:
> >    mount -o dax /dev/pmem0 /mnt/pmem/
> >    vim /mnt/pmem/xxx
> > then 'vim' is crashed due to segment fault.
> >
> > This bug can be reproduced on your tree, the top commit is
> > 10d7902fa0e82b (dax: unmap/truncate on device shutdown), the kernel
> > configure file is attached.
> >
> > Your thought or comment is highly appreciated.
> 
> I'm going to be offline until Tuesday, but I will investigate when I'm
> back.  In the meantime if Ross or Vishal had an opportunity to take a
> look I wouldn't say "no" :).

I haven't been able to reproduce this vim segfault.  I'm using QEMU v2.6.0,
and the kernel commit you mentioned, and your kernel config.

Here's my QEMU command line:

sudo ~/qemu/bin/qemu-system-x86_64 /var/lib/libvirt/images/alara.qcow2 \
-machine pc,nvdimm -m 8G,maxmem=100G,slots=100  -object \
memory-backend-file,id=mem1,share,mem-path=/dev/pmem0,size=8G -device \
nvdimm,memdev=mem1,id=nv1 -smp 6 -machine pc,accel=kvm 

With this I'm able to mkfs the guest's /dev/pmem0, mount it with -o dax, and
write a file with vim.

Can you reproduce your results with a pmem device created via a memmap kernel
command line parameter in the guest?  You'll need to update your kernel
config to enable CONFIG_X86_PMEM_LEGACY and CONFIG_X86_PMEM_LEGACY_DEVICE.
_______________________________________________
Linux-nvdimm mailing list
Linux-nvdimm@lists.01.org
https://lists.01.org/mailman/listinfo/linux-nvdimm

WARNING: multiple messages have this Message-ID (diff)
From: Ross Zwisler <ross.zwisler@linux.intel.com>
To: Dan Williams <dan.j.williams@intel.com>
Cc: Xiao Guangrong <guangrong.xiao@linux.intel.com>,
	Yumei Huang <yuhuang@redhat.com>, KVM <kvm@vger.kernel.org>,
	"linux-nvdimm@lists.01.org" <linux-nvdimm@ml01.01.org>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
	LKML <linux-kernel@vger.kernel.org>,
	Linux ACPI <linux-acpi@vger.kernel.org>,
	Stefan Hajnoczi <stefanha@redhat.com>
Subject: Re: DAX can not work on virtual nvdimm device
Date: Fri, 19 Aug 2016 12:30:47 -0600	[thread overview]
Message-ID: <20160819183047.GA7216@linux.intel.com> (raw)
In-Reply-To: <CAPcyv4hVgi6Hw8Beg=Nt78+U0QNJN9mBGWEp3V6bg86NaM3Q6Q@mail.gmail.com>

On Fri, Aug 19, 2016 at 07:59:29AM -0700, Dan Williams wrote:
> On Fri, Aug 19, 2016 at 4:19 AM, Xiao Guangrong
> <guangrong.xiao@linux.intel.com> wrote:
> >
> > Hi Dan,
> >
> > Recently, Redhat reported that nvml test suite failed on QEMU/KVM,
> > more detailed info please refer to:
> >    https://bugzilla.redhat.com/show_bug.cgi?id=1365721
> >
> > The reason for this bug is that the memory region created by mmap()
> > on the dax-based file was gone so that the region can not be found
> > in /proc/self/smaps during the runtime.
> >
> > This is a simple way to trigger this issue:
> >    mount -o dax /dev/pmem0 /mnt/pmem/
> >    vim /mnt/pmem/xxx
> > then 'vim' is crashed due to segment fault.
> >
> > This bug can be reproduced on your tree, the top commit is
> > 10d7902fa0e82b (dax: unmap/truncate on device shutdown), the kernel
> > configure file is attached.
> >
> > Your thought or comment is highly appreciated.
> 
> I'm going to be offline until Tuesday, but I will investigate when I'm
> back.  In the meantime if Ross or Vishal had an opportunity to take a
> look I wouldn't say "no" :).

I haven't been able to reproduce this vim segfault.  I'm using QEMU v2.6.0,
and the kernel commit you mentioned, and your kernel config.

Here's my QEMU command line:

sudo ~/qemu/bin/qemu-system-x86_64 /var/lib/libvirt/images/alara.qcow2 \
-machine pc,nvdimm -m 8G,maxmem=100G,slots=100  -object \
memory-backend-file,id=mem1,share,mem-path=/dev/pmem0,size=8G -device \
nvdimm,memdev=mem1,id=nv1 -smp 6 -machine pc,accel=kvm 

With this I'm able to mkfs the guest's /dev/pmem0, mount it with -o dax, and
write a file with vim.

Can you reproduce your results with a pmem device created via a memmap kernel
command line parameter in the guest?  You'll need to update your kernel
config to enable CONFIG_X86_PMEM_LEGACY and CONFIG_X86_PMEM_LEGACY_DEVICE.

WARNING: multiple messages have this Message-ID (diff)
From: Ross Zwisler <ross.zwisler@linux.intel.com>
To: Dan Williams <dan.j.williams@intel.com>
Cc: Xiao Guangrong <guangrong.xiao@linux.intel.com>,
	Yumei Huang <yuhuang@redhat.com>, KVM <kvm@vger.kernel.org>,
	"linux-nvdimm@lists.01.org" <linux-nvdimm@lists.01.org>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
	LKML <linux-kernel@vger.kernel.org>,
	Linux ACPI <linux-acpi@vger.kernel.org>,
	Stefan Hajnoczi <stefanha@redhat.com>
Subject: Re: [Qemu-devel] DAX can not work on virtual nvdimm device
Date: Fri, 19 Aug 2016 12:30:47 -0600	[thread overview]
Message-ID: <20160819183047.GA7216@linux.intel.com> (raw)
In-Reply-To: <CAPcyv4hVgi6Hw8Beg=Nt78+U0QNJN9mBGWEp3V6bg86NaM3Q6Q@mail.gmail.com>

On Fri, Aug 19, 2016 at 07:59:29AM -0700, Dan Williams wrote:
> On Fri, Aug 19, 2016 at 4:19 AM, Xiao Guangrong
> <guangrong.xiao@linux.intel.com> wrote:
> >
> > Hi Dan,
> >
> > Recently, Redhat reported that nvml test suite failed on QEMU/KVM,
> > more detailed info please refer to:
> >    https://bugzilla.redhat.com/show_bug.cgi?id=1365721
> >
> > The reason for this bug is that the memory region created by mmap()
> > on the dax-based file was gone so that the region can not be found
> > in /proc/self/smaps during the runtime.
> >
> > This is a simple way to trigger this issue:
> >    mount -o dax /dev/pmem0 /mnt/pmem/
> >    vim /mnt/pmem/xxx
> > then 'vim' is crashed due to segment fault.
> >
> > This bug can be reproduced on your tree, the top commit is
> > 10d7902fa0e82b (dax: unmap/truncate on device shutdown), the kernel
> > configure file is attached.
> >
> > Your thought or comment is highly appreciated.
> 
> I'm going to be offline until Tuesday, but I will investigate when I'm
> back.  In the meantime if Ross or Vishal had an opportunity to take a
> look I wouldn't say "no" :).

I haven't been able to reproduce this vim segfault.  I'm using QEMU v2.6.0,
and the kernel commit you mentioned, and your kernel config.

Here's my QEMU command line:

sudo ~/qemu/bin/qemu-system-x86_64 /var/lib/libvirt/images/alara.qcow2 \
-machine pc,nvdimm -m 8G,maxmem=100G,slots=100  -object \
memory-backend-file,id=mem1,share,mem-path=/dev/pmem0,size=8G -device \
nvdimm,memdev=mem1,id=nv1 -smp 6 -machine pc,accel=kvm 

With this I'm able to mkfs the guest's /dev/pmem0, mount it with -o dax, and
write a file with vim.

Can you reproduce your results with a pmem device created via a memmap kernel
command line parameter in the guest?  You'll need to update your kernel
config to enable CONFIG_X86_PMEM_LEGACY and CONFIG_X86_PMEM_LEGACY_DEVICE.

  parent reply	other threads:[~2016-08-19 18:30 UTC|newest]

Thread overview: 64+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-08-19 11:19 DAX can not work on virtual nvdimm device Xiao Guangrong
2016-08-19 11:19 ` [Qemu-devel] " Xiao Guangrong
2016-08-19 11:19 ` Xiao Guangrong
2016-08-19 11:19 ` Xiao Guangrong
2016-08-19 14:59 ` Dan Williams
2016-08-19 14:59   ` [Qemu-devel] " Dan Williams
2016-08-19 14:59   ` Dan Williams
2016-08-19 14:59   ` Dan Williams
     [not found]   ` <CAPcyv4hVgi6Hw8Beg=Nt78+U0QNJN9mBGWEp3V6bg86NaM3Q6Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-08-19 18:30     ` Ross Zwisler [this message]
2016-08-19 18:30       ` [Qemu-devel] " Ross Zwisler
2016-08-19 18:30       ` Ross Zwisler
2016-08-19 18:30       ` Ross Zwisler
     [not found]       ` <20160819183047.GA7216-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2016-08-21  9:55         ` Boaz Harrosh
2016-08-21  9:55           ` [Qemu-devel] " Boaz Harrosh
2016-08-21  9:55           ` Boaz Harrosh
2016-08-21  9:55           ` Boaz Harrosh
2016-08-29  7:54         ` Xiao Guangrong
2016-08-29  7:54           ` [Qemu-devel] " Xiao Guangrong
2016-08-29  7:54           ` Xiao Guangrong
2016-08-29  7:54           ` Xiao Guangrong
     [not found]           ` <600ac51c-0f61-6e53-9bfa-669c85494d1f-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2016-08-29 19:30             ` Ross Zwisler
2016-08-29 19:30               ` [Qemu-devel] " Ross Zwisler
2016-08-29 19:30               ` Ross Zwisler
2016-08-29 19:30               ` Ross Zwisler
     [not found]               ` <20160829193014.GB16738-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2016-08-30  6:53                 ` Xiao Guangrong
2016-08-30  6:53                   ` [Qemu-devel] " Xiao Guangrong
2016-08-30  6:53                   ` Xiao Guangrong
2016-08-30  6:53                   ` Xiao Guangrong
2016-08-30 17:09                   ` Dan Williams
2016-08-30 17:09                     ` [Qemu-devel] " Dan Williams
2016-08-30 17:09                     ` Dan Williams
2016-08-30 17:09                     ` Dan Williams
     [not found]                     ` <CAPcyv4hrFSxNcmmVLVZT4fK3+hspPCDKW0rVBj1=3GkJRgZ29Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-08-31  8:44                       ` Xiao Guangrong
2016-08-31  8:44                         ` [Qemu-devel] " Xiao Guangrong
2016-08-31  8:44                         ` Xiao Guangrong
2016-08-31  8:44                         ` Xiao Guangrong
     [not found]                         ` <25098f37-53f7-6d5d-0b1a-8469bab51a9f-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2016-08-31 16:46                           ` Ross Zwisler
2016-08-31 16:46                             ` [Qemu-devel] " Ross Zwisler
2016-08-31 16:46                             ` Ross Zwisler
2016-08-31 16:46                             ` Ross Zwisler
2016-09-02  2:57                         ` Ross Zwisler
2016-09-02  2:57                           ` [Qemu-devel] " Ross Zwisler
2016-09-02  2:57                           ` Ross Zwisler
2016-09-02  2:57                           ` Ross Zwisler
     [not found]                           ` <20160902025738.GA26108-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2016-09-06 15:06                             ` Jan Kara
2016-09-06 15:06                               ` [Qemu-devel] " Jan Kara
2016-09-06 15:06                               ` Jan Kara
2016-09-06 15:06                               ` Jan Kara
     [not found]                               ` <20160906150620.GJ28922-4I4JzKEfoa/jFM9bn6wA6Q@public.gmane.org>
2016-09-08 20:47                                 ` Ross Zwisler
2016-09-08 20:47                                   ` [Qemu-devel] " Ross Zwisler
2016-09-08 20:47                                   ` Ross Zwisler
2016-09-08 20:47                                   ` Ross Zwisler
     [not found]                                   ` <20160908204708.GA15167-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2016-09-09  9:19                                     ` Jan Kara
2016-09-09  9:19                                       ` [Qemu-devel] " Jan Kara
2016-09-09  9:19                                       ` Jan Kara
2016-09-09  9:19                                       ` Jan Kara
     [not found]                                       ` <20160909091925.GF22777-4I4JzKEfoa/jFM9bn6wA6Q@public.gmane.org>
2016-09-09 14:03                                         ` Theodore Ts'o
2016-09-09 14:03                                           ` [Qemu-devel] " Theodore Ts'o
2016-09-09 14:03                                           ` Theodore Ts'o
2016-09-09 14:03                                           ` Theodore Ts'o
     [not found]                                           ` <20160909140327.r2j64s5xdaxnnxhx-AKGzg7BKzIDYtjvyW6yDsg@public.gmane.org>
2016-09-09 16:34                                             ` Ross Zwisler
2016-09-09 16:34                                               ` [Qemu-devel] " Ross Zwisler
2016-09-09 16:34                                               ` Ross Zwisler
2016-09-09 16:34                                               ` Ross Zwisler

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=20160819183047.GA7216@linux.intel.com \
    --to=ross.zwisler-vuqaysv1563yd54fqh9/ca@public.gmane.org \
    --cc=dan.j.williams-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org \
    --cc=guangrong.xiao-VuQAYsv1563Yd54FQh9/CA@public.gmane.org \
    --cc=kvm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linux-acpi-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linux-nvdimm-hn68Rpc1hR1g9hUCZPvPmw@public.gmane.org \
    --cc=qemu-devel-qX2TKyscuCcdnm+yROfE0A@public.gmane.org \
    --cc=stefanha-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
    --cc=yuhuang-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.