linux-xfs.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [fstests PATCH v4 0/4] add test for DAX MAP_SYNC support
@ 2017-11-17 20:28 Ross Zwisler
  2017-11-17 20:28 ` [fstests PATCH v4 1/4] common/rc: add _scratch_has_mount_option() Ross Zwisler
                   ` (3 more replies)
  0 siblings, 4 replies; 8+ messages in thread
From: Ross Zwisler @ 2017-11-17 20:28 UTC (permalink / raw)
  To: fstests
  Cc: Ross Zwisler, linux-xfs, linux-nvdimm, Jan Kara, Dave Chinner,
	Dan Williams, Amir Goldstein

The purpose of this series is to exercise the new MAP_SYNC mmap()
functionality [1].  It adds a test which uses dm-log-writes to try and
replay filesystem metadata operations for a file that is being written via
mmap().

If MAP_SYNC is active the dm-log-writes replay will recreate the file's
block allocations and you'll end up with a test file which is a known
size.

If MAP_SYNC is not active the metadata writes will most likely be lost and
the replay will either fail to create the test file at all or it will may
be smaller.  In all of my testing the file simply doesn't exist on the
replay if MAP_SYNC is ommited.

This test relies on a kernel with both the MAP_SYNC mmap() functionality
and the DAX enabling in dm-log-writes.  These will both appear in kernel
v4.15-rc1.  For ease of testing I've posted a kernel that is v4.14 plus
just those two patch series [2].

This test also relies on xfsprogs having support for MAP_SYNC and for
dm-log-writes.  I've posed a tree adding that support [3].  This xfsprogs
series is still under review so if the xfs_io interfaces change this
test will of course need to be updated as well.

Lastly, I've also posted a working version of this series [4].

Changes since v3:
 - Enhanced xfs_io with MAP_SYNC and dm-log-writes functionality instead of
   creating a one-off test program.  (Dave Chinner)

 - Improved dm target version checking. (Amir)

 - Fixed dm-log-writes replay issue, some general cleanup, broke changes
   out into a series.

[1]: https://lists.01.org/pipermail/linux-nvdimm/2017-November/013164.html
[2]: https://git.kernel.org/pub/scm/linux/kernel/git/zwisler/linux.git/log/?h=map_sync_dm_log_writes
[3]: https://git.kernel.org/pub/scm/linux/kernel/git/zwisler/xfsprogs-dev.git/log/?h=map_sync
[4]: https://git.kernel.org/pub/scm/linux/kernel/git/zwisler/xfstests-dev.git/log/?h=map_sync_test_v4

Ross Zwisler (4):
  common/rc: add _scratch_has_mount_option()
  dm-log-writes: only replay log to marks that exist
  dm-log-writes: allow DAX to be used when possible
  generic: add test for DAX MAP_SYNC support

 common/dmlogwrites           |  9 +++--
 common/rc                    | 33 ++++++++++++++++--
 doc/requirement-checking.txt |  5 +--
 tests/generic/468            | 83 ++++++++++++++++++++++++++++++++++++++++++++
 tests/generic/468.out        |  3 ++
 tests/generic/group          |  1 +
 6 files changed, 128 insertions(+), 6 deletions(-)
 create mode 100755 tests/generic/468
 create mode 100644 tests/generic/468.out

-- 
2.9.5


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2017-12-05 23:21 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-11-17 20:28 [fstests PATCH v4 0/4] add test for DAX MAP_SYNC support Ross Zwisler
2017-11-17 20:28 ` [fstests PATCH v4 1/4] common/rc: add _scratch_has_mount_option() Ross Zwisler
2017-11-17 20:28 ` [fstests PATCH v4 2/4] dm-log-writes: only replay log to marks that exist Ross Zwisler
2017-11-18  3:51   ` Eryu Guan
2017-11-17 20:28 ` [fstests PATCH v4 3/4] dm-log-writes: allow DAX to be used when possible Ross Zwisler
2017-11-18  6:17   ` Eryu Guan
2017-12-05 23:21     ` Ross Zwisler
2017-11-17 20:28 ` [fstests PATCH v4 4/4] generic: add test for DAX MAP_SYNC support Ross Zwisler

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).