Overlayfs whiteout can be visible if underlying upper fs does not
support d_type. Kernel commit
45aebea (ovl: Ensure upper filesystem supports d_type)
prevents mounting overlayfs like this since v4.6-rc1.
Check upper fs before mounting overlay, mark as not run if needs.
Signed-off-by: Xiong Zhou <xzhou@redhat.com>
Reviewed-by: Eryu Guan <eguan@redhat.com>
Signed-off-by: Dave Chinner <david@fromorbit.com>
local dir=$1
local mnt=$2
shift 2
+
+ local upper_fst=$(df --output=fstype $dir | tail -1)
+ case "$upper_fst" in
+ xfs)
+ if ! xfs_info $dir | grep -q "ftype=1" ; then
+ _notrun "upper fs needs to support d_type"
+ fi
+ ;;
+ ext2|ext3|ext4)
+ if ! tune2fs -l $(df --output=source $dir | tail -1) | \
+ grep -q filetype ; then
+ _notrun "upper fs needs to support d_type"
+ fi
+ ;;
+ esac
+
mkdir -p $dir/$OVERLAY_UPPER_DIR
mkdir -p $dir/$OVERLAY_LOWER_DIR
mkdir -p $dir/$OVERLAY_WORK_DIR