From: "Darrick J. Wong" <darrick.wong@oracle.com> To: eguan@redhat.com, darrick.wong@oracle.com Cc: ocfs2-devel@oss.oracle.com, fstests@vger.kernel.org Subject: [PATCH 6/7] reflink: don't test disjoint block sharing sets Date: Sun, 11 Dec 2016 13:53:22 -0800 [thread overview] Message-ID: <148149320283.31093.5997149744213850055.stgit@birch.djwong.org> (raw) In-Reply-To: <148149316504.31093.16129068344227450710.stgit@birch.djwong.org> Unlike xfs/btrfs which store refcounting information as part of the space metadata, ocfs2 implements block sharing (reflink) by creating refcount btrees that are shared between subsets of files. Effectively, this means that a ocfs2 can have multiple disjoint sets of files that share blocks, which also means that blocks cannot be reflinked between two disjoint refcounted-file-sets. generic/119 tests the ability to do this, so we cannot run it for ocfs2. Create a _require helper to check for this. Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com> --- common/reflink | 9 +++++++++ tests/generic/119 | 1 + 2 files changed, 10 insertions(+) diff --git a/common/reflink b/common/reflink index d048045..55d82ac 100644 --- a/common/reflink +++ b/common/reflink @@ -28,6 +28,15 @@ _require_cp_reflink() _notrun "This test requires a cp with --reflink support." } +# Can we reflink between arbitrary file sets? +# i.e. if we reflink a->b and c->d, can we later share +# blocks between b & c? +_require_arbitrary_fileset_reflink() +{ + test "$FSTYP" = "ocfs2" && \ + _notrun "reflink between arbitrary file groups not supported in $FSTYP" +} + # Given 2 files, verify that they have the same mapping but different # inodes - i.e. an undisturbed reflink # Silent if so, make noise if not diff --git a/tests/generic/119 b/tests/generic/119 index e6a6f59..b28e044 100755 --- a/tests/generic/119 +++ b/tests/generic/119 @@ -47,6 +47,7 @@ _cleanup() # real QA test starts here _supported_os Linux _require_test_reflink +_require_arbitrary_fileset_reflink rm -f $seqres.full
WARNING: multiple messages have this Message-ID (diff)
From: Darrick J. Wong <darrick.wong@oracle.com> To: eguan@redhat.com, darrick.wong@oracle.com Cc: ocfs2-devel@oss.oracle.com, fstests@vger.kernel.org Subject: [Ocfs2-devel] [PATCH 6/7] reflink: don't test disjoint block sharing sets Date: Sun, 11 Dec 2016 13:53:22 -0800 [thread overview] Message-ID: <148149320283.31093.5997149744213850055.stgit@birch.djwong.org> (raw) In-Reply-To: <148149316504.31093.16129068344227450710.stgit@birch.djwong.org> Unlike xfs/btrfs which store refcounting information as part of the space metadata, ocfs2 implements block sharing (reflink) by creating refcount btrees that are shared between subsets of files. Effectively, this means that a ocfs2 can have multiple disjoint sets of files that share blocks, which also means that blocks cannot be reflinked between two disjoint refcounted-file-sets. generic/119 tests the ability to do this, so we cannot run it for ocfs2. Create a _require helper to check for this. Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com> --- common/reflink | 9 +++++++++ tests/generic/119 | 1 + 2 files changed, 10 insertions(+) diff --git a/common/reflink b/common/reflink index d048045..55d82ac 100644 --- a/common/reflink +++ b/common/reflink @@ -28,6 +28,15 @@ _require_cp_reflink() _notrun "This test requires a cp with --reflink support." } +# Can we reflink between arbitrary file sets? +# i.e. if we reflink a->b and c->d, can we later share +# blocks between b & c? +_require_arbitrary_fileset_reflink() +{ + test "$FSTYP" = "ocfs2" && \ + _notrun "reflink between arbitrary file groups not supported in $FSTYP" +} + # Given 2 files, verify that they have the same mapping but different # inodes - i.e. an undisturbed reflink # Silent if so, make noise if not diff --git a/tests/generic/119 b/tests/generic/119 index e6a6f59..b28e044 100755 --- a/tests/generic/119 +++ b/tests/generic/119 @@ -47,6 +47,7 @@ _cleanup() # real QA test starts here _supported_os Linux _require_test_reflink +_require_arbitrary_fileset_reflink rm -f $seqres.full
next prev parent reply other threads:[~2016-12-11 21:53 UTC|newest] Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top 2016-12-11 21:52 [PATCH 0/7] xfstests: misc reflink test fixes Darrick J. Wong 2016-12-11 21:52 ` [Ocfs2-devel] " Darrick J. Wong 2016-12-11 21:52 ` [PATCH 1/7] ocfs2: test reflinking to inline data files Darrick J. Wong 2016-12-11 21:52 ` [Ocfs2-devel] " Darrick J. Wong 2016-12-12 9:01 ` Eryu Guan 2016-12-12 18:09 ` Darrick J. Wong 2016-12-12 18:09 ` [Ocfs2-devel] " Darrick J. Wong 2016-12-13 3:20 ` Eryu Guan 2016-12-13 7:11 ` Darrick J. Wong 2016-12-13 7:11 ` [Ocfs2-devel] " Darrick J. Wong 2016-12-13 21:35 ` Darrick J. Wong 2016-12-13 21:35 ` [Ocfs2-devel] " Darrick J. Wong 2016-12-14 7:32 ` Eric Ren 2016-12-14 7:32 ` [Ocfs2-devel] " Eric Ren 2016-12-11 21:52 ` [PATCH 2/7] ocfs2/reflink: fix file block size reporting Darrick J. Wong 2016-12-11 21:52 ` [Ocfs2-devel] " Darrick J. Wong 2016-12-12 9:48 ` Eryu Guan 2016-12-12 23:08 ` Darrick J. Wong 2016-12-12 23:08 ` [Ocfs2-devel] " Darrick J. Wong 2016-12-11 21:53 ` [PATCH 3/7] reflink: fix quota tests to work properly Darrick J. Wong 2016-12-11 21:53 ` [Ocfs2-devel] " Darrick J. Wong 2016-12-12 10:06 ` Eryu Guan 2016-12-12 23:08 ` Darrick J. Wong 2016-12-12 23:08 ` [Ocfs2-devel] " Darrick J. Wong 2016-12-11 21:53 ` [PATCH 4/7] reflink: fix space consumption tests Darrick J. Wong 2016-12-11 21:53 ` [Ocfs2-devel] " Darrick J. Wong 2016-12-12 10:25 ` Eryu Guan 2016-12-12 23:03 ` Darrick J. Wong 2016-12-12 23:03 ` [Ocfs2-devel] " Darrick J. Wong 2016-12-13 3:22 ` Eryu Guan 2016-12-11 21:53 ` [PATCH 5/7] reflink: make error reporting consistent Darrick J. Wong 2016-12-11 21:53 ` [Ocfs2-devel] " Darrick J. Wong 2016-12-12 10:47 ` Eryu Guan 2016-12-12 23:06 ` Darrick J. Wong 2016-12-12 23:06 ` [Ocfs2-devel] " Darrick J. Wong 2016-12-11 21:53 ` Darrick J. Wong [this message] 2016-12-11 21:53 ` [Ocfs2-devel] [PATCH 6/7] reflink: don't test disjoint block sharing sets Darrick J. Wong 2016-12-11 21:53 ` [PATCH 7/7] xfs/ext4: check negative inode size Darrick J. Wong 2016-12-11 21:53 ` [Ocfs2-devel] " Darrick J. Wong 2016-12-12 11:07 ` Eryu Guan 2016-12-13 21:49 ` Darrick J. Wong 2016-12-13 21:49 ` [Ocfs2-devel] " Darrick J. Wong
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=148149320283.31093.5997149744213850055.stgit@birch.djwong.org \ --to=darrick.wong@oracle.com \ --cc=eguan@redhat.com \ --cc=fstests@vger.kernel.org \ --cc=ocfs2-devel@oss.oracle.com \ /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: linkBe 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.