Generally, FSTYP is used to specify OVL_BASE_FSTYP. When we specify FSTYP through an environment variable, it is not converted to OVL_BASE_FSTYP. In addition, sometimes we do not even specify the file type. For example, we only use `./check -n -overlay -g auto` to list overlay-related cases. If OVL_BASE_FSTYP is NULL, mounting fails and the test fails. To solve this problem, try to assign a value to OVL_BASE_FSTYP when specifying -overlay. In addition, in the _overlay_base_mount function, the basic file system type of the overlay is specified only when OVL_BASE_FSTYP is not NULL. Reported-by: Murphy Zhou <jencce.kernel@xxxxxxxxx> Signed-off-by: Baokun Li <libaokun1@xxxxxxxxxx> --- check | 1 + common/overlay | 7 ++++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/check b/check index 1ff0f44a..22062935 100755 --- a/check +++ b/check @@ -283,6 +283,7 @@ while [ $# -gt 0 ]; do FSTYP="${1:1}" ;; -overlay) + [ "$FSTYP" == overlay ] || export OVL_BASE_FSTYP="$FSTYP" FSTYP=overlay export OVERLAY=true ;; diff --git a/common/overlay b/common/overlay index e35419d0..20cafeb1 100644 --- a/common/overlay +++ b/common/overlay @@ -85,7 +85,12 @@ _overlay_base_mount() return 1 fi - _mount -t $OVL_BASE_FSTYP $* $dev $mnt + if [ $OVL_BASE_FSTYP ]; then + _mount -t $OVL_BASE_FSTYP $* $dev $mnt + else + _mount $* $dev $mnt + fi + _idmapped_mount $dev $mnt } -- 2.31.1