mirror of
https://github.com/linux-apfs/apfstests.git
synced 2026-05-01 15:01:44 -07:00
overlay: enable the index feature for overlay/hardlink tests
Overlayfs hardlink test are expected to fail if overlayfs does not support the inodes index feature, so don't un them if kernel does not support the feature. If the feature is supported, enable it with the index=on mount option for the hardlink tests, regardless of the build time default determined by kernel config option CONFIG_OVERLAY_FS_INDEX. Signed-off-by: Amir Goldstein <amir73il@gmail.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
9107e08df7
commit
29e399dae8
+5
-3
@@ -10,7 +10,7 @@
|
||||
#
|
||||
#-----------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (C) 2016 CTERA Networks. All Rights Reserved.
|
||||
# Copyright (C) 2016-2017 CTERA Networks. All Rights Reserved.
|
||||
# Author: Amir Goldstein <amir73il@gmail.com>
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
@@ -49,6 +49,7 @@ _cleanup()
|
||||
_supported_fs overlay
|
||||
_supported_os Linux
|
||||
_require_scratch
|
||||
_require_scratch_feature index
|
||||
|
||||
rm -f $seqres.full
|
||||
|
||||
@@ -81,7 +82,8 @@ function check_ino_nlink()
|
||||
diff -u $before $after
|
||||
}
|
||||
|
||||
_scratch_mount
|
||||
# Enable overlay index feature to prevent breaking hardlinks on copy up
|
||||
_scratch_mount -o index=on
|
||||
|
||||
|
||||
rm -f $tmp.*
|
||||
@@ -105,7 +107,7 @@ cat $FILES
|
||||
check_ino_nlink $tmp.before $tmp.after_one
|
||||
|
||||
# Verify that the hardlinks survive a mount cycle
|
||||
_scratch_cycle_mount
|
||||
_scratch_cycle_mount index=on
|
||||
|
||||
echo "== After mount cycle =="
|
||||
cat $FILES
|
||||
|
||||
+3
-1
@@ -53,6 +53,7 @@ rm -f $seqres.full
|
||||
_supported_fs overlay
|
||||
_supported_os Linux
|
||||
_require_scratch
|
||||
_require_scratch_feature index
|
||||
|
||||
# Remove all files from previous tests
|
||||
_scratch_mkfs
|
||||
@@ -71,7 +72,8 @@ $XFS_IO_PROG -fc "pwrite 1g 4k" $lowerdir/zero >> $seqres.full
|
||||
ln $lowerdir/zero $lowerdir/one
|
||||
ln $lowerdir/zero $lowerdir/two
|
||||
|
||||
_scratch_mount
|
||||
# Enable overlay index feature to prevent breaking hardlinks on copy up
|
||||
_scratch_mount -o index=on
|
||||
|
||||
do_cmd()
|
||||
{
|
||||
|
||||
+5
-3
@@ -50,6 +50,7 @@ rm -f $seqres.full
|
||||
_supported_fs overlay
|
||||
_supported_os Linux
|
||||
_require_scratch
|
||||
_require_scratch_feature index
|
||||
|
||||
report_nlink()
|
||||
{
|
||||
@@ -122,7 +123,7 @@ test_hardlinks()
|
||||
rm $SCRATCH_MNT/2
|
||||
|
||||
# Verify that orphan index is cleaned when dropping nlink to zero
|
||||
ls $OVL_BASE_SCRATCH_MNT/$OVL_WORK/index 2>/dev/null
|
||||
ls $OVL_BASE_SCRATCH_MNT/$OVL_WORK/index
|
||||
}
|
||||
|
||||
# Remove all files from previous tests
|
||||
@@ -131,7 +132,8 @@ _scratch_mkfs
|
||||
# Create lower hardlinks
|
||||
create_hardlinks
|
||||
|
||||
_scratch_mount
|
||||
# Enable overlay index feature to prevent breaking hardlinks on copy up
|
||||
_scratch_mount -o index=on
|
||||
# Test hardlinks with warm dcache
|
||||
DCACHETEMP=warm
|
||||
test_hardlinks
|
||||
@@ -140,7 +142,7 @@ test_hardlinks
|
||||
_scratch_unmount
|
||||
_scratch_mkfs
|
||||
create_hardlinks
|
||||
_scratch_mount
|
||||
_scratch_mount -o index=on
|
||||
|
||||
# Test hardlinks with cold dcache
|
||||
DCACHETEMP=cold
|
||||
|
||||
+6
-3
@@ -64,6 +64,8 @@ rm -f $seqres.full
|
||||
_supported_fs overlay
|
||||
_supported_os Linux
|
||||
_require_scratch
|
||||
# Without overlay index feature hardlinks are broken on copy up
|
||||
_require_scratch_feature index
|
||||
|
||||
# Remove all files from previous tests
|
||||
_scratch_mkfs
|
||||
@@ -74,7 +76,8 @@ mkdir -p $lowerdir
|
||||
touch $lowerdir/0
|
||||
ln $lowerdir/0 $lowerdir/1
|
||||
|
||||
_scratch_mount
|
||||
# Enable overlay index feature to prevent breaking hardlinks on copy up
|
||||
_scratch_mount -o index=on
|
||||
|
||||
# Copy up lower hardlink - overlay inode nlink 2 is copied from lower
|
||||
touch $SCRATCH_MNT/0
|
||||
@@ -99,8 +102,8 @@ rm $SCRATCH_MNT/1
|
||||
rm $SCRATCH_MNT/4
|
||||
|
||||
# Verify that orphan index is cleaned on mount
|
||||
_scratch_cycle_mount
|
||||
ls $OVL_BASE_SCRATCH_MNT/$OVL_WORK/index 2>/dev/null
|
||||
_scratch_cycle_mount index=on
|
||||
ls $OVL_BASE_SCRATCH_MNT/$OVL_WORK/index
|
||||
|
||||
echo "Silence is golden"
|
||||
status=0
|
||||
|
||||
Reference in New Issue
Block a user