Hi, On Fri 06-11-15 17:57:04, Boylston, Brian wrote: > I've written a test tool (included below) that exercises page faults on > hole-y portions of an mmapped file. The file is created, sized using > various methods, mmapped, and then two threads race to write a marker to > different offsets within each mapped page. Once the threads have > finished marking each page, the pages are checked for the presence of > the markers. > > With vanilla 4.2 and 4.3 kernels, this test easily exposes corruption on > pmem-backed, DAX-mounted xfs and ext4 file systems. > > With 4.3 and this ext4 patch set, the data corruption is still seen: > > $ ./holetest -f /pmem1/brian/holetest 1000 > holetest r207 Thanks for the test. I'll try to reproduce locally and have a look why my block zeroing patch didn't work as expected. Honza > > INFO: zero-filled test... > INFO: sz = 3e800000, npages = 256000 > INFO: vastart = 00007f2ad0bd0000 > INFO: thread 0 is 7f2ad0bcf700 > INFO: thread 1 is 7f2ad03ce700 > INFO: 0 error(s) detected > > INFO: posix_fallocate test... > INFO: sz = 3e800000, npages = 256000 > INFO: vastart = 00007f2ad0bd0000 > INFO: thread 0 is 7f2ad03ce700 > INFO: thread 1 is 7f2ad0bcf700 > INFO: 0 error(s) detected > > INFO: fallocate test... > INFO: sz = 3e800000, npages = 256000 > INFO: vastart = 00007f2ad0bd0000 > INFO: thread 0 is 7f2ad0bcf700 > INFO: thread 1 is 7f2ad03ce700 > INFO: 0 error(s) detected > > INFO: ftruncate test... > INFO: sz = 3e800000, npages = 256000 > INFO: vastart = 00007f2ad0bd0000 > INFO: thread 0 is 7f2ad03ce700 > INFO: thread 1 is 7f2ad0bcf700 > ERROR: thread 0, offset 01001c00, 00000000 != 7f2ad03ce700 > ERROR: thread 0, offset 01801c00, 00000000 != 7f2ad03ce700 > ERROR: thread 0, offset 02001c00, 00000000 != 7f2ad03ce700 > ERROR: thread 0, offset 02807c00, 00000000 != 7f2ad03ce700 > ERROR: thread 0, offset 0281dc00, 00000000 != 7f2ad03ce700 > ERROR: thread 0, offset 03001c00, 00000000 != 7f2ad03ce700 > ERROR: thread 0, offset 03023c00, 00000000 != 7f2ad03ce700 > ERROR: thread 0, offset 03801c00, 00000000 != 7f2ad03ce700 > ERROR: thread 0, offset 03804c00, 00000000 != 7f2ad03ce700 > ERROR: thread 0, offset 04001c00, 00000000 != 7f2ad03ce700 > ERROR: thread 0, offset 04801c00, 00000000 != 7f2ad03ce700 > ERROR: thread 0, offset 05001c00, 00000000 != 7f2ad03ce700 > ERROR: thread 1, offset 0e001400, 00000000 != 7f2ad0bcf700 > ERROR: thread 1, offset 16001400, 00000000 != 7f2ad0bcf700 > ERROR: thread 1, offset 1b001400, 00000000 != 7f2ad0bcf700 > ERROR: thread 1, offset 2a802400, 00000000 != 7f2ad0bcf700 > ERROR: thread 1, offset 31005400, 00000000 != 7f2ad0bcf700 > ERROR: thread 0, offset 3e6b3c00, 00000000 != 7f2ad03ce700 > INFO: 18 error(s) detected > $ -- Jan Kara <jack@xxxxxxxx> SUSE Labs, CR -- To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html