James Dingwall wrote:
--- xfs_super.c 2013-04-29 10:28:22.000000000 +0100
+++ xfs_super.cleancache.c 2013-05-01 13:22:44.367763564 +0100
@@ -61,6 +61,7 @@
#include <linux/kthread.h>
#include <linux/freezer.h>
#include <linux/parser.h>
+#include <linux/cleancache.h>
static const struct super_operations xfs_super_operations;
static kmem_zone_t *xfs_ioend_zone;
@@ -1489,6 +1490,8 @@
goto out_unmount;
}
+ cleancache_init_fs(sb);
+
return 0;
out_filestream_unmount:
I have tested this patch with xfstests
(dd3b5268312e0518ae695e8ee2a618f13805c425) and the output is attached.
I had four reported failures with and without, one seems due to my
locale settings but I don't know what to make of the others. These were
the commands that I ran to prepare my system and execute the tests. If
it would be worth performing more runs or using a different group of
tests please suggest what it would be worth doing. I have also
published the patch in git at:
https://github.com/JKDingwall/linux.git xfs-enable-cleancache
Thanks,
James
# mkfs -t xfs /dev/xvdc1
meta-data=/dev/xvdc1 isize=256 agcount=4, agsize=1048512 blks
= sectsz=512 attr=2, projid32bit=0
data = bsize=4096 blocks=4194048, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0
log =internal log bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
# mkdir /tmp/test
# mkdir /tmp/scratch
# TEST_DEV="/dev/xvdc1" ; export TEST_DEV
# TEST_DIR="/tmp/test" ; export TEST_DIR
# SCRATCH_DEV="/dev/xvdd1" ; export SCRATCH_DEV
# SCRATCH_MNT="/tmp/scratch" ; export SCRATCH_MNT
# mount /dev/xvdc1 /tmp/test
# ./check -xfs -g rw # run 1 - 3.9.0 with cleancache patch
# ./check -xfs -g rw # run 3 - 3.9.1 no patch
xfstests.1.out.gz
Description: application/gzip
xfstests.3.out.gz
Description: application/gzip
|