@@ -73,26 +73,39 @@ __populate_create_attr() {
done
}
-# Fill up 60% of the remaining free space
+# Fill up some percentage of the remaining free space
__populate_fill_fs() {
dir="$1"
pct="$2"
test -z "${pct}" && pct=60
- SRC_SZ="$(du -ks "${SRCDIR}" | cut -f 1)"
+ mkdir -p "${dir}/test/1"
+ cp -pRdu "${dir}"/S_IFREG* "${dir}/test/1/"
+
+ SRC_SZ="$(du -ks "${dir}/test/1" | cut -f 1)"
FS_SZ="$(( $(stat -f "${dir}" -c '%a * %S') / 1024 ))"
NR="$(( (FS_SZ * ${pct} / 100) / SRC_SZ ))"
- test "${NR}" -lt 1 && NR=1
- seq 1 "${NR}" | while read nr; do
- cp -pRdu "${SRCDIR}" "${dir}/test.${nr}" >> $seqres.full 2>&1
+ echo "FILL FS"
+ echo "src_sz $SRC_SZ fs_sz $FS_SZ nr $NR"
+ seq 2 "${NR}" | while read nr; do
+ cp -pRdu "${dir}/test/1" "${dir}/test/${nr}"
done
}
# Populate an XFS on the scratch device with (we hope) all known
# types of metadata block
_scratch_xfs_populate() {
+ fill=1
+
+ for arg in $@; do
+ case "${arg}" in
+ "nofill")
+ fill=0;;
+ esac
+ done
+
_scratch_mount
blksz="$(stat -f -c '%s' "${SCRATCH_MNT}")"
dblksz="$(xfs_info "${SCRATCH_MNT}" | grep naming.*bsize | sed -e 's/^.*bsize=//g' -e 's/\([0-9]*\).*$/\1/g')"
@@ -225,7 +238,7 @@ _scratch_xfs_populate() {
# Copy some real files (xfs tests, I guess...)
echo "+ real files"
- __populate_fill_fs "${SCRATCH_MNT}" 5
+ test $fill -ne 0 && __populate_fill_fs "${SCRATCH_MNT}" 5
umount "${SCRATCH_MNT}"
}
@@ -233,6 +246,15 @@ _scratch_xfs_populate() {
# Populate an ext4 on the scratch device with (we hope) all known
# types of metadata block
_scratch_ext4_populate() {
+ fill=1
+
+ for arg in $@; do
+ case "${arg}" in
+ "nofill")
+ fill=0;;
+ esac
+ done
+
_scratch_mount
blksz="$(stat -f -c '%s' "${SCRATCH_MNT}")"
dblksz="${blksz}"
@@ -300,8 +322,7 @@ _scratch_ext4_populate() {
# Copy some real files (xfs tests, I guess...)
echo "+ real files"
- __populate_fill_fs "${SCRATCH_MNT}"
- cp -pRdu --reflink=always "${SCRATCH_MNT}/S_IFREG.FMT_ETREE" "${SCRATCH_MNT}/S_IREG.FMT_ETREE.REFLINK" 2> /dev/null
+ test $fill -ne 0 && __populate_fill_fs "${SCRATCH_MNT}" 5
umount "${SCRATCH_MNT}"
}
Be a little more flexible in how much we fill up a pre-populated filesystem. For the field fuzzing tests, we don't need the extra space/inode usage and therefore won't want much at all. Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com> --- common/populate | 37 +++++++++++++++++++++++++++++-------- 1 file changed, 29 insertions(+), 8 deletions(-) -- To unsubscribe from this list: send the line "unsubscribe linux-xfs" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html