From: Darrick J. Wong Date: Thu, 24 Apr 2025 21:41:18 +0000 (-0700) Subject: fuse2fs: return -EOPNOTSUPP when we don't recognize a fallocate mode X-Git-Tag: archive/debian/1.47.2-2~18 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=ed870e354469af625fba1ecf8efe1e4ba326de1d;p=thirdparty%2Fe2fsprogs.git fuse2fs: return -EOPNOTSUPP when we don't recognize a fallocate mode If we don't recognize a set bit in the mode parameter to fallocate, return EOPNOTSUPP to communicate that we don't support that mode instead of EINVAL. This avoids unnecessary failures in generic/521 such as: generic/521 - output mismatch (see /var/tmp/fstests/generic/521.out.bad) --- tests/generic/521.out 2025-01-30 10:00:16.898276477 -0800 +++ /var/tmp/fstests/generic/521.out.bad 2025-04-03 14:46:20.019822396 -0700 @@ -1,2 +1,9 @@ QA output created by 521 +zero range: 0x407ca to 0x52885 +do_zero_range: fallocate: Invalid argument Signed-off-by: Darrick J. Wong Link: https://lore.kernel.org/r/174553064961.1160461.9412670014664878384.stgit@frogsfrogsfrogs Signed-off-by: Theodore Ts'o (cherry picked from commit 7775293c08d2255e90b1e003ee532d826af52d95) --- diff --git a/misc/fuse2fs.c b/misc/fuse2fs.c index 2e046320..1ec7cd22 100644 --- a/misc/fuse2fs.c +++ b/misc/fuse2fs.c @@ -3616,7 +3616,7 @@ static int op_fallocate(const char *path EXT2FS_ATTR((unused)), int mode, /* Catch unknown flags */ if (mode & ~(FL_PUNCH_HOLE_FLAG | FL_KEEP_SIZE_FLAG)) - return -EINVAL; + return -EOPNOTSUPP; pthread_mutex_lock(&ff->bfl); if (!fs_writeable(fs)) {