Re: [PATCH 1/2] generic/740: set env for mkfs.exfat
"Darrick J. Wong" <[email protected]> Thu, 25 Jun 2026 11:45:16 -0700
| Newsgroups | org.kernel.vger.fstests |
|---|---|
| Message-ID | <20260625184516.GQ6070@frogsfrogsfrogs> |
On Fri, Jun 19, 2026 at 06:53:06AM +0200, Christoph Hellwig wrote: > On Fri, Jun 19, 2026 at 04:22:35AM +0900, David Timber wrote: > > 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 \ > > breaking up the long line still would be nice here, i.e. keep at 80 > characters. Else looks good. I wonder why we don't just redirect stdin from /dev/null, it's not like we want to capture user input anyway... --D