mirror of
https://github.com/linux-apfs/apfstests.git
synced 2026-05-01 15:01:44 -07:00
generic/422: Do not hardcode space used by files
Test generic/422 hardcodes in the output file how much space files it creates are supposed to take up on disk. This doesn't work when additional space is allocated for extended attributes for ACLs or SELinux labels. Instead, record the actual space used in generic/422.full, and only check if the writeback changes the space used. Signed-off-by: Andreas Gruenbacher <agruenba@redhat.com> Reviewed-by: Eryu Guan <eguan@redhat.com> Signed-off-by: Eryu Guan <eguan@redhat.com>
This commit is contained in:
committed by
Eryu Guan
parent
21db51dd98
commit
76ddf492fb
+28
-23
@@ -88,40 +88,45 @@ $XFS_IO_PROG -c "pwrite -S 0xff 64K 64K" $SCRATCH_MNT/foo3 | _filter_xfs_io
|
||||
$XFS_IO_PROG -c "pwrite -S 0xab 0 64K" $SCRATCH_MNT/foo4 | _filter_xfs_io
|
||||
$XFS_IO_PROG -d -c "pwrite -S 0xef 0 64K" $SCRATCH_MNT/foo4 | _filter_xfs_io
|
||||
|
||||
echo
|
||||
echo "Before writeback"
|
||||
echo
|
||||
space_used() {
|
||||
echo "Space used by file foo1:"
|
||||
du -h $SCRATCH_MNT/foo1 | _filter_scratch
|
||||
|
||||
echo "Space used by file foo1:"
|
||||
du -h $SCRATCH_MNT/foo1 | _filter_scratch
|
||||
echo "Space used by file foo2:"
|
||||
du -h $SCRATCH_MNT/foo2 | _filter_scratch
|
||||
|
||||
echo "Space used by file foo2:"
|
||||
du -h $SCRATCH_MNT/foo2 | _filter_scratch
|
||||
echo "Space used by file foo3:"
|
||||
du -h $SCRATCH_MNT/foo3 | _filter_scratch
|
||||
|
||||
echo "Space used by file foo3:"
|
||||
du -h $SCRATCH_MNT/foo3 | _filter_scratch
|
||||
echo "Space used by file foo4:"
|
||||
du -h $SCRATCH_MNT/foo4 | _filter_scratch
|
||||
}
|
||||
|
||||
echo "Space used by file foo4:"
|
||||
du -h $SCRATCH_MNT/foo4 | _filter_scratch
|
||||
space_used > $SCRATCH_MNT/$seq.before
|
||||
(
|
||||
echo
|
||||
echo "Before writeback"
|
||||
echo
|
||||
|
||||
cat $SCRATCH_MNT/$seq.before
|
||||
) >> $seqres.full
|
||||
|
||||
sync
|
||||
|
||||
# We expect the same file sizes reported by 'du' after writeback finishes.
|
||||
echo
|
||||
echo "After writeback"
|
||||
echo
|
||||
|
||||
echo "Space used by file foo1:"
|
||||
du -h $SCRATCH_MNT/foo1 | _filter_scratch
|
||||
space_used > $SCRATCH_MNT/$seq.after
|
||||
(
|
||||
echo
|
||||
echo "After writeback"
|
||||
echo
|
||||
|
||||
echo "Space used by file foo2:"
|
||||
du -h $SCRATCH_MNT/foo2 | _filter_scratch
|
||||
cat $SCRATCH_MNT/$seq.after
|
||||
) >> $seqres.full
|
||||
|
||||
echo "Space used by file foo3:"
|
||||
du -h $SCRATCH_MNT/foo3 | _filter_scratch
|
||||
|
||||
echo "Space used by file foo4:"
|
||||
du -h $SCRATCH_MNT/foo4 | _filter_scratch
|
||||
if diff -q $SCRATCH_MNT/$seq.before $SCRATCH_MNT/$seq.after; then
|
||||
echo "Space used before and after writeback is equal"
|
||||
fi
|
||||
|
||||
status=0
|
||||
exit
|
||||
|
||||
+1
-22
@@ -17,25 +17,4 @@ wrote 65536/65536 bytes at offset 0
|
||||
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
wrote 65536/65536 bytes at offset 0
|
||||
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
|
||||
Before writeback
|
||||
|
||||
Space used by file foo1:
|
||||
64K SCRATCH_MNT/foo1
|
||||
Space used by file foo2:
|
||||
128K SCRATCH_MNT/foo2
|
||||
Space used by file foo3:
|
||||
128K SCRATCH_MNT/foo3
|
||||
Space used by file foo4:
|
||||
64K SCRATCH_MNT/foo4
|
||||
|
||||
After writeback
|
||||
|
||||
Space used by file foo1:
|
||||
64K SCRATCH_MNT/foo1
|
||||
Space used by file foo2:
|
||||
128K SCRATCH_MNT/foo2
|
||||
Space used by file foo3:
|
||||
128K SCRATCH_MNT/foo3
|
||||
Space used by file foo4:
|
||||
64K SCRATCH_MNT/foo4
|
||||
Space used before and after writeback is equal
|
||||
|
||||
Reference in New Issue
Block a user