bug#6131: [PATCH]: fiemap support for efficient sparse file copy (original) (raw)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
From: | Jim Meyering |
---|---|
Subject: | bug#6131: [PATCH]: fiemap support for efficient sparse file copy |
Date: | Mon, 24 May 2010 09:41:27 +0200 |
jeff.liu wrote:
Jim Meyering wrote: > jeff.liu wrote: > ... >>>> Subject: [PATCH 1/1] tests: add a new test for FIEMAP-copy >>>> >>>> * tests/cp/sparse-fiemap: Add a new test for FIEMAP-copy against a >>>> loopbacked ext4 partition. >>>> * tests/Makefile.am (sparse-fiemap): Reference the new test. > > BTW, I've just made this additional change to your test, > > diff --git a/tests/cp/sparse-fiemap b/tests/cp/sparse-fiemap > index 6312a4c..bdc7ded 100755 > --- a/tests/cp/sparse-fiemap > +++ b/tests/cp/sparse-fiemap > @@ -27,6 +27,7 @@ requireroot > cwd=
pwd
> cleanup() { cd /; umount "$cwd/mnt"; } > > +skip=0
More fixes for the test:
- remove useless rm
- sparseandsparse and sparseandfiemap were not defined in that final test, so cd into mnt/ and just use the file names instead.
- I prefer $(...) to
...
, and it's portable in this context
diff --git a/tests/cp/sparse-fiemap b/tests/cp/sparse-fiemap index 32ca5fc..cec5224 100755 --- a/tests/cp/sparse-fiemap +++ b/tests/cp/sparse-fiemap @@ -40,18 +40,18 @@ test -s mnt/f || skip=1 test $skip = 1 && skip_test_ "insufficient mount/ext4 support"
-rm -f mnt/f
Create a 1TiB sparse file
dd if=/dev/zero of=mnt/sparse bs=1k count=1 seek=1G || framework_failure
+cd mnt || fail=1 +
It takes many minutes to copy this sparse file using the old method.
By contrast, it takes far less than 1 second using FIEMAP-copy.
-timeout 10 cp --sparse=always mnt/sparse mnt/sparse_fiemap || fail=1 +timeout 10 cp --sparse=always sparse fiemap || fail=1
Ensure that the sparse file copied through fiemap has the same size
in bytes as the original.
-test stat --printf %s <span class="katex"><span class="katex-mathml"><math xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><mi>s</mi><mi>p</mi><mi>a</mi><mi>r</mi><mi>s</mi><mi>e</mi><mi mathvariant="normal">‘</mi><mo>=</mo><mi mathvariant="normal">‘</mi><mi>s</mi><mi>t</mi><mi>a</mi><mi>t</mi><mo>−</mo><mo>−</mo><mi>p</mi><mi>r</mi><mi>i</mi><mi>n</mi><mi>t</mi><mi>f</mi></mrow><annotation encoding="application/x-tex">sparse
= stat --printf %s </annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="base"><span class="strut" style="height:0.8889em;vertical-align:-0.1944em;"></span><span class="mord mathnormal">s</span><span class="mord mathnormal">p</span><span class="mord mathnormal">a</span><span class="mord mathnormal">rse</span><span class="mord">‘</span><span class="mspace" style="margin-right:0.2778em;"></span><span class="mrel">=</span><span class="mspace" style="margin-right:0.2778em;"></span></span><span class="base"><span class="strut" style="height:0.7778em;vertical-align:-0.0833em;"></span><span class="mord">‘</span><span class="mord mathnormal">s</span><span class="mord mathnormal">t</span><span class="mord mathnormal">a</span><span class="mord mathnormal">t</span><span class="mspace" style="margin-right:0.2222em;"></span><span class="mbin">−</span><span class="mspace" style="margin-right:0.2222em;"></span></span><span class="base"><span class="strut" style="height:0.8889em;vertical-align:-0.1944em;"></span><span class="mord">−</span><span class="mord mathnormal">p</span><span class="mord mathnormal" style="margin-right:0.02778em;">r</span><span class="mord mathnormal">in</span><span class="mord mathnormal">t</span><span class="mord mathnormal" style="margin-right:0.10764em;">f</span></span></span></span>fiemap
|| fail=1
+test (stat−−printf(stat --printf %s sparse) = (stat−−printf(stat --printf %s fiemap) || fail=1
=================================================
Ensure that we exercise the FIEMAP-copying code enough
-- 1.7.1.262.g5ef3d
- bug#6131: [PATCH]: fiemap support for efficient sparse file copy, (continued)
* bug#6131: [PATCH]: fiemap support for efficient sparse file copy, Jim Meyering, 2010/05/20
* bug#6131: [PATCH]: fiemap support for efficient sparse file copy, Pádraig Brady, 2010/05/21
* bug#6131: [PATCH]: fiemap support for efficient sparse file copy, Jim Meyering, 2010/05/21
* bug#6131: [PATCH]: fiemap support for efficient sparse file copy, Pádraig Brady, 2010/05/21
* bug#6131: [PATCH]: fiemap support for efficient sparse file copy, jeff.liu, 2010/05/21
* bug#6131: [PATCH]: fiemap support for efficient sparse file copy, Jim Meyering, 2010/05/21
* bug#6131: [PATCH]: fiemap support for efficient sparse file copy, jeff.liu, 2010/05/21
* bug#6131: [PATCH]: fiemap support for efficient sparse file copy, Jim Meyering, 2010/05/21
* bug#6131: [PATCH]: fiemap support for efficient sparse file copy, Jim Meyering, 2010/05/21
* bug#6131: [PATCH]: fiemap support for efficient sparse file copy, jeff.liu, 2010/05/21
* bug#6131: [PATCH]: fiemap support for efficient sparse file copy,Jim Meyering <=
* bug#6131: [PATCH]: fiemap support for efficient sparse file copy, jeff.liu, 2010/05/24
* bug#6131: [PATCH]: fiemap support for efficient sparse file copy, jeff.liu, 2010/05/24
* bug#6131: [PATCH]: fiemap support for efficient sparse file copy, Jim Meyering, 2010/05/25
* bug#6131: [PATCH]: fiemap support for efficient sparse file copy, jeff.liu, 2010/05/25
* bug#6131: [PATCH]: fiemap support for efficient sparse file copy, jeff.liu, 2010/05/21
* bug#6131: [PATCH]: fiemap support for efficient sparse file copy, Jim Meyering, 2010/05/27
* bug#6131: [PATCH]: fiemap support for efficient sparse file copy, jeff.liu, 2010/05/27
* bug#6131: [PATCH]: fiemap support for efficient sparse file copy, Sunil Mushran, 2010/05/27
* bug#6131: [PATCH]: fiemap support for efficient sparse file copy, Jim Meyering, 2010/05/27
* bug#6131: [PATCH]: fiemap support for efficient sparse file copy, Sunil Mushran, 2010/05/27
- Prev by Date:bug#6131: [PATCH]: fiemap support for efficient sparse file copy
- Next by Date:bug#6131: [PATCH]: fiemap support for efficient sparse file copy
- Previous by thread:bug#6131: [PATCH]: fiemap support for efficient sparse file copy
- Next by thread:bug#6131: [PATCH]: fiemap support for efficient sparse file copy
- Index(es):