On Fri, Feb 21, 2025 at 10:44:09AM +0530, Nirjhar Roy (IBM) wrote: > On Thu, 2025-02-13 at 12:06 -0600, Eric Sandeen wrote: > > A bug was recently fixed in exfat where attempting to do a zero-byte > > write would yield -EFAULT; test for that here. > > > > Signed-off-by: Eric Sandeen <sandeen@xxxxxxxxxx> > > --- > > > > diff --git a/tests/generic/761 b/tests/generic/761 > > new file mode 100755 > > index 00000000..e933eb83 > > --- /dev/null > > +++ b/tests/generic/761 > > @@ -0,0 +1,28 @@ > > +#! /bin/bash > > +# SPDX-License-Identifier: GPL-2.0 > > +# Copyright (c) 2025 Red Hat, Inc. All Rights Reserved. > > +# > > +# FS QA Test 761 > > +# > > +# test zero-byte writes > > +# > > +# exfat had a regression where a zero-byte write to a file would > > +# yield -EfAULT. Should work on all filesystems - write should > > +# succeed and the zero-byte file should be created. > > +# > > +. ./common/preamble > > +_begin_fstest auto quick > > + > > +[ "$FSTYP" = "exfat" ] && _fixed_by_kernel_commit dda0407a2026 \ > > + "exfat: short-circuit zero-byte writes in > > exfat_file_write_iter" > > + > > +# Modify as appropriate. > > +_require_test > > + > > +rm -f $TEST_DIR/testfile.$seq > > +$XFS_IO_PROG -f -c "pwrite 0 0" $TEST_DIR/testfile.$seq > > +test -f $TEST_DIR/testfile.$seq || _fail "file not created" > Minor: Maybe just remove the test file that is created above (since we > are using the TEST_DIR)and not leave any test artifacts? Or, maybe use > the scratch device? Agreed, the _cleanup should remove the testfile. Using the scratch device (== additional runtime for mkfs) is overkill since this test creates a single file but writes nothing to it. --D > --NR > > + > > +# success, all done > > +status=0 > > +exit > > diff --git a/tests/generic/761.out b/tests/generic/761.out > > new file mode 100644 > > index 00000000..72ebba4c > > --- /dev/null > > +++ b/tests/generic/761.out > > @@ -0,0 +1,2 @@ > > +QA output created by 761 > > +Silence is golden > > > >