In _require_defrag defragmentation command path is fixed. That will
cause that this test case is skipped in some distributions.
Signed-off-by: Zheng Liu <wenqing.lz@taobao.com>
Reviewed-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Rich Johnston <rjohnston@sgi.com>
Perform various regression tests for ext4defrag subsystem
301'th Test1: Defragment file while other task does direct AIO
302'th Test2: Perform defragmentation on file under buffered AIO
while third task does direct AIO to donor file
303'th Test3: Two defrag tasks use common donor file.
304'th Test4: Stress defragmentation. Several threads perform
fragmentation at random position use inplace=1 will
allocate and free blocks inside defrag event improve
load pressure.
This tests are considered dangerous because 302'th and 303'th are known
to trigger OOPS on recent kernels see:https://gist.github.com/dmonakhov/4770294
Signed-off-by: Dmitry Monakhov <dmonakhov@openvz.org>
Reviewed-by: Rich Johnston <rjohnston@sgi.com>
Signed-off-by: Rich Johnston <rjohnston@sgi.com>
Btrfs progs has a defragment tool, so we can test 218 on btrfs now.
Signed-off-by: Liu Bo <liubo2009@cn.fujitsu.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
blkid knows to identify the ext4dev FSTYP of a partition that was
formatted with mkfs.ext4dev.
quota tools and various util-linux utils are also aware of ext4dev,
so ext4dev shares the same capabilities as ext4.
Tested-by: Sergey Ivanov <sergey57@gmail.com>
Signed-off-by: Amir Goldstein <amir73il@users.sf.net>
Signed-off-by: Eric Sandeen <sandeen@redhat.com>
While most tests use /bin/sh, they are dependent on /bin/sh being a
bash shell. Convert all the tests to execute via /bin/bash as it is
much, much simpler than trying to debug and remove all the bashisms
throughout the test code.
Signed-off-by: Dave Chinner <david@fromorbit.com>
Reviewed-by: Eric Sandeen <sandeen@sandeen.net>
This test creates some files, runs defrag on them,
and compares the before/after fragmentation as well
as file md5sums and timestamps.
The test currently expects to find e4defrag in
/usr/bin
It should be relatively easy to add more interestingly
fragmented files to the tests, as well as to test
that memory-mapped files aren't touched, etc -
but this gives us a framework.
V2: remount before checking file contents, and create
common.defrag.
Signed-off-by: Eric Sandeen <sandeen@sandeen.net>
Reviewed-by: Christoph Hellwig <hch@lst.de>