On 11/4/19 4:13 PM, Ritesh Harjani wrote:
On 11/4/19 12:46 AM, Theodore Y. Ts'o wrote:
On Tue, Oct 29, 2019 at 12:49:24PM +0530, Ritesh Harjani wrote:
So it looks like these failed tests does not seem to be because of this
patch series. But these are broken in general for at least 1K blocksize.
Agreed, I failed to add them to the exclude list for diread_nolock_1k.
Thanks for pointing that out!
After looking through these patches, it looks good. So, I've landed
this series on the ext4 git tree.
There are some potential conflicts with Matthew's DIO using imap patch
set. I tried resolving them in the obvious way (see the tt/mb-dio
branch[1] on ext4.git), and unfortunately, there is a flaky test
failure with generic/270 --- 2 times out 30 runs of generic/270, the
file system is left inconsistent, with problems found in the block
allocation bitmap.
[1]
https://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4.git/log/?h=tt/mb-dio
I've verified that generic/270 isn't a problem on -rc3, and it's not a
problem with just your patch series. So, it's almost certain it's
because I screwed up the merge. I applied each of Matthew's patch one
at a time, and conflict was in changes in ext4_end_io_dio, which is
dropped in Matthew's patch. It wasn't obvious though where the
dioread-nolock-1k change should be applied in Matthew's patch series.
Could you take a look? Thanks!!
Looked into the above mentioned branch.
I see the patches of iomap patch series were properly
applied. It is ok to completely remove function "ext4_end_io_dio" and
directly call for "ext4_convert_unwritten_extents" from
"ext4_dio_write_end_io" (which is also done by default).
Actually io_end_vec in dioread_nolock series was used for AIO
DIO, since AIO+DIO was already using io_end structure and all
io_end usage was moved to use io_end_vec.
But since in iomap, we don't use io_end structure so it is ok
to directly call for ext4_convert_unwritten_extents with offset &
size argument.
hmm, I will try and run this generic/270 at my end to see what is going
wrong with this. It would be good if you could share the xfstest config
under which this is failing & if possible the failed logs/report.
Meanwhile, I will test generic/270 on your given branch with
dioread_nolock & 1K bs configuration.
-ritesh