All of lore.kernel.org
 help / color / mirror / Atom feed
* [RFCv3.1 00/11] xfstests: test the nfs/cifs/btrfs/xfs reflink/dedupe ioctls
@ 2015-11-11 19:26 ` Darrick J. Wong
  0 siblings, 0 replies; 38+ messages in thread
From: Darrick J. Wong @ 2015-11-11 19:26 UTC (permalink / raw)
  To: hch, david, darrick.wong
  Cc: fstests, xfs, tao.peng, linux-ext4, Anna.Schumaker, linux-btrfs

Hi all,

This is part of the third revision of an RFC for adding to XFS support
for tracking reverse-mappings of physical blocks to file and metadata;
and support for mapping multiple file logical blocks to the same
physical block, more commonly known as reflinking.

This patchset aims to make xfstests perform more rigorous testing of
the NFS/CIFS/ocfs2/btrfs/XFS file clone, reflink, and dedupe ioctls.
There are now tests of the basic functionality of the three ioctls;
tests to ensure that the filesystem exhibits the expected copy on
write semantics; tests to try to suss out race conditions in the new
write paths; tests to ensure that the ioctls peform basic disk
accounting correctly; tests of the interaction between reflink and the
various fallocate verbs (allocate, punch, collapse, insert zeroes);
and some attempts to test the upper limits of reflinking and ENOSPC
behavior.

Since the last posting, each test tries to reflink (or dedupe) on the
test or scratch FS to decide if they're going to run, instead of
guessing based on FS type.  Per Dave's suggestion, I also converted
the basic functionality tests to use fixed sizes so that I can use
md5sum in the golden output to check that the file contents match
exactly.

Issues: 

 * I think the race checks for dedupe could be a little sharper at
   finding mistakes.

 * The realtime reflink test (xfs/804) crashes XFS before we even get
   to the reflink attempt.

 * I started the numbering really high to prevent the tests from
   colliding with whatever new tests might arrive; this will require
   some intervention to fix.

If you're going to start using this mess, you probably ought to just
pull from my github trees for kernel[1], xfsprogs[2], xfstests[3], and
xfs-docs[4].  They should just work with the btrfs that's in 4.3...
and somewhat buggily with the 4.3 XFS patched with [1].

Comments and questions are, as always, welcome.

--D

[1] https://github.com/djwong/linux/tree/for-dave
[2] https://github.com/djwong/xfsprogs/tree/for-dave
[3] https://github.com/djwong/xfstests/tree/for-dave
[4] https://github.com/djwong/xfs-documentation/tree/for-dave

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

end of thread, other threads:[~2015-11-13 18:33 UTC | newest]

Thread overview: 38+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-11-11 19:26 [RFCv3.1 00/11] xfstests: test the nfs/cifs/btrfs/xfs reflink/dedupe ioctls Darrick J. Wong
2015-11-11 19:26 ` Darrick J. Wong
2015-11-11 19:26 ` [PATCH 01/11] btrfs: move btrfs reflink tests to generic Darrick J. Wong
2015-11-11 19:26   ` Darrick J. Wong
2015-11-11 19:26 ` [PATCH 02/11] generic/80[0-2]: support xfs in addition to btrfs Darrick J. Wong
2015-11-11 19:26   ` Darrick J. Wong
2015-11-11 19:26 ` [PATCH 03/11] reflink: basic tests of the reflink and dedupe ioctls Darrick J. Wong
2015-11-11 19:26   ` Darrick J. Wong
2015-11-11 19:26 ` [PATCH 04/11] reflink: test CoW behaviors of reflinked files Darrick J. Wong
2015-11-11 19:26   ` Darrick J. Wong
2015-11-11 19:27 ` [PATCH 05/11] reflink: test the various fallocate modes Darrick J. Wong
2015-11-11 19:27   ` Darrick J. Wong
2015-11-11 19:27 ` [PATCH 06/11] reflink: concurrent operations tests Darrick J. Wong
2015-11-11 19:27   ` Darrick J. Wong
2015-11-11 19:27 ` [PATCH 07/11] reflink: test accuracy of free block counts Darrick J. Wong
2015-11-11 19:27   ` Darrick J. Wong
2015-11-11 19:27 ` [PATCH 08/11] reflink: test error conditions due to bad inputs Darrick J. Wong
2015-11-11 19:27   ` Darrick J. Wong
2015-11-11 19:27 ` [PATCH 09/11] xfs: test xfs-specific reflink pieces Darrick J. Wong
2015-11-11 19:27   ` Darrick J. Wong
2015-11-11 19:27 ` [PATCH 10/11] reflink: test what happens when we hit resource limits Darrick J. Wong
2015-11-11 19:27   ` Darrick J. Wong
2015-11-11 19:27 ` [PATCH 11/11] reflink: test that CoW writes fail when we're out of space Darrick J. Wong
2015-11-11 19:27   ` Darrick J. Wong
2015-11-12  9:07 ` [RFCv3.1 00/11] xfstests: test the nfs/cifs/btrfs/xfs reflink/dedupe ioctls Christoph Hellwig
2015-11-12  9:07   ` Christoph Hellwig
2015-11-12 12:51   ` Christoph Hellwig
2015-11-12 12:51     ` Christoph Hellwig
2015-11-12 17:34     ` Darrick J. Wong
2015-11-12 17:34       ` Darrick J. Wong
2015-11-12 17:36       ` Christoph Hellwig
2015-11-12 17:36         ` Christoph Hellwig
2015-11-13  9:08         ` Darrick J. Wong
2015-11-13  9:08           ` Darrick J. Wong
2015-11-13 14:12           ` Christoph Hellwig
2015-11-13 14:12             ` Christoph Hellwig
2015-11-13 18:32             ` Darrick J. Wong
2015-11-13 18:32               ` Darrick J. Wong

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.