From: Filipe Manana <fdmanana@xxxxxxxx> We are never using the FALLOC_FL_KEEP_SIZE flag for zero range operations even when we intend to use it. So fix it by setting that flag for the call to fallocate(2) if the 'keep_size' parameter is true. Signed-off-by: Filipe Manana <fdmanana@xxxxxxxx> --- ltp/fsx.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ltp/fsx.c b/ltp/fsx.c index 06d08e4e..7f7b7a87 100644 --- a/ltp/fsx.c +++ b/ltp/fsx.c @@ -1199,6 +1199,9 @@ do_zero_range(unsigned offset, unsigned length, int keep_size) unsigned end_offset; int mode = FALLOC_FL_ZERO_RANGE; + if (keep_size) + mode |= FALLOC_FL_KEEP_SIZE; + if (length == 0) { if (!quiet && testcalls > simulatedopcount) prt("skipping zero length zero range\n"); -- 2.11.0