From: zhangyi (F) Date: Thu, 8 Feb 2018 03:19:09 +0000 (+0800) Subject: overlay: add filesystem check helper X-Git-Tag: v2022.05.01~1657 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=ab5034f7bedae0b760204da546f9fcfd9f02a530;p=users%2Fhch%2Fxfstests-dev.git overlay: add filesystem check helper Add filesystem check helper for the upcoming fsck.overlay utility. This helper invoke fsck.overlay to check and optionally repair underlying directories of overlay filesystem. Signed-off-by: zhangyi (F) Reviewed-by: Amir Goldstein Signed-off-by: Eryu Guan --- diff --git a/common/config b/common/config index 5f40413d9..71115bdbc 100644 --- a/common/config +++ b/common/config @@ -236,6 +236,7 @@ case "$HOSTOS" in export MKFS_REISER4_PROG="`set_prog_path mkfs.reiser4`" export E2FSCK_PROG="`set_prog_path e2fsck`" export TUNE2FS_PROG="`set_prog_path tune2fs`" + export FSCK_OVERLAY_PROG="`set_prog_path fsck.overlay`" ;; esac diff --git a/common/overlay b/common/overlay index ad2f3be8b..16f13a8fb 100644 --- a/common/overlay +++ b/common/overlay @@ -168,3 +168,17 @@ _require_scratch_overlay_features() _scratch_unmount } + +# Helper function to check underlying dirs of overlay filesystem +_overlay_fsck_dirs() +{ + local lowerdir=$1 + local upperdir=$2 + local workdir=$3 + shift 3 + + [[ ! -x "$FSCK_OVERLAY_PROG" ]] && return 0 + + $FSCK_OVERLAY_PROG -o lowerdir=$lowerdir -o upperdir=$upperdir \ + -o workdir=$workdir $* +}