xfstests ext4/304 failing due to donor inode's i_size == 0
Hi Dmitry,
I was investigating why ext4/304 is failing, and it's due to defrag-fuzzer returning an error:
defrag-fuzzer: (groupid=0, jobs=1): err=22 (file:ioengines.c:309, func=td_io_que ue, error=Invalid argument): pid=3207: Sun Oct 18 19:43:57 2015
After instrumenting the kernel, it appears that this is due to donor inode's i_size being set to 0.
Can you reproduce this faiure? And if it's working for you, what version of fio are you using? I normally use fio 2.1.3, since newer versions of fio have caused test regressions that appear to be caused by fio bugs. I tried fio 2.1.14, it was also failing. I could try using 2.2.x versions of fio, but as I recall, that set of versions was were I started running into other test failures caused by fio bugs. (When I asked Dave Chinner about this a while back, he tod me he was using 2.1.3 because he had run into regressions caused by vio, and I've been sticking with fio 2.1.3 for quite a while now.)
Thanks,
- Ted
Quoted 4 lines · Theodore Ts'o
Hi Dmitry,
I was investigating why ext4/304 is failing, and it's due to defrag-fuzzer returning an error:
Yep. You are right. I have out of tree patch which fix that. I'll send it to xfstests-dev list.
Quoted 1 line
From
ee628504370564704e218ecf089f00c243b6fd12Mon Sep 17 00:00:00 2001
From: Dmitry Monakhov <[email protected]>
Date: Tue, 20 Oct 2015 18:32:03 +0400
Subject: [PATCH] ext4/304 handle ENOSPC/EINVAL correctly
'defrag-fuzzer' is task which try to perform inplace defrag, inline-defrag is basically of {falloc,ioc_swap} and may fail due to ENOSPC on first stage. In that case IOCTL returns EINVAL (because we try to swap invalid extents)
Since this is hard core test then ENOSPC and corresponding EINVAL is expected.
--- tests/ext4/304 | 1 + 1 files changed, 1 insertions(+), 0 deletions(-)
tests/ext4/304 +1 -0
@@ -76,6 +76,7 @@ donorname=test4.def filename=test4 inplace=1 rw=randwrite +ignore_error=,EINVAL numjobs=4*${LOAD_FACTOR} runtime=30*${TIME_FACTOR} time_based
Signature · 1 line
1.7.1
Quoted 8 lines · Dmitry Monakhov
Quoted 4 lines · Theodore Ts'o
Hi Dmitry,
I was investigating why ext4/304 is failing, and it's due to defrag-fuzzer returning an error:
Yep. You are right. I have out of tree patch which fix that. I'll send it to xfstests-dev list.
I tried the patch you sent, but ext4/304 is still failing. At the end of 304.full:
fio: file hash not empty on exit
- Ted