[PATCH 1/2] generic/740: set env for mkfs.exfat
David Timber <[email protected]> Fri, 19 Jun 2026 04:22:35 +0900
| Newsgroups | org.kernel.vger.fstests |
|---|---|
| Message-ID | <[email protected]> |
Foreign filesystem detection is added in exfatprogs version 1.4.1. To maintain backward compatibility, mkfs.exfat refuses to format the device only when it's run from terminal with a tty associated to it. This is similar to how e2fsprogs work around the issue. However, with exfatprogs, this behaviour can be overridden with the special environment variable EXFAT_TTY_OVERRIDE to simulate shell invocation by user. Signed-off-by: David Timber <[email protected]> --- tests/generic/740 | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/tests/generic/740 b/tests/generic/740 index ce55200f..4f8bf099 100755 --- a/tests/generic/740 +++ b/tests/generic/740 @@ -28,6 +28,18 @@ _require_block_device "${SCRATCH_DEV}" # not all the FS support zoned block device _require_non_zoned_device "${SCRATCH_DEV}" +mkfs_preop="" +mkfs_preargs="" +mkfs_postargs="" + +case "$FSTYP" in +exfat) + # For backward compatibility, mkfs.exfat refuses to format only when run + # from a tty. This env var should override the behaviour if supported. + mkfs_preop="EXFAT_TTY_OVERRIDE=1" + ;; +esac + echo "Silence is golden." for fs in `echo ${MKFS_PROG}.* | sed -e "s:${MKFS_PROG}.::g"` do @@ -83,7 +95,8 @@ do # next, ensure we don't overwrite it echo "=== Attempting $FSTYP overwrite of $fs..." >>$seqres.full - ${MKFS_PROG} -t $FSTYP $SCRATCH_DEV >>$seqres.full 2>&1 + eval $mkfs_preop ${MKFS_PROG} -t $FSTYP $mkfs_preargs $SCRATCH_DEV $mkfs_postargs \ + >>$seqres.full 2>&1 [ $? -eq 0 ] && echo "Failed - overwrote fs type ${fs}!" else -- 2.54.0