On Thu, Jun 28, 2018 at 01:39:09AM -0700, Matthew Wilcox wrote: > On Wed, Jun 27, 2018 at 01:44:38PM -0600, Ross Zwisler wrote: > > On Wed, Jun 27, 2018 at 04:05:29AM -0700, Matthew Wilcox wrote: > > > On Tue, Jun 19, 2018 at 10:16:38AM -0700, Matthew Wilcox wrote: > > > > I think I see a bug. No idea if it's the one you're hitting ;-) > > > > > > > > I had been intending to not use the 'entry' to decide whether we were > > > > waiting on a 2MB or 4kB page, but rather the xas. I shelved that idea, > > > > but not before dropping the DAX_PMD flag being passed from the PMD > > > > pagefault caller. So if I put that back ... > > > > > > Did you get a chance to test this? > > > > With this patch it doesn't deadlock, but the test dies with a SIGBUS and we > > hit a WARN_ON in the DAX code: > > > > WARNING: CPU: 5 PID: 1678 at fs/dax.c:226 get_unlocked_entry+0xf7/0x120 > > > > I don't have a lot of time this week to debug further. The quickest path to > > victory is probably for you to get this reproducing in your test setup. Does > > XFS + DAX + generic/340 pass for you? > > I won't be back in front of my test box until Tuesday, but that test > does work for me because I couldn't get your instructions to give me a > 2MB aligned DAX setup. I had to settle for 4k, so none of the 2MB stuff > has been tested properly. Ah. I've documented both my qemu setup and my filesystem setup here: https://nvdimm.wiki.kernel.org/pmem_in_qemu https://nvdimm.wiki.kernel.org/2mib_fs_dax This should be enough to get you up and running in QEMU and able to reliably get filesystem DAX PMD faults.