Subject: Re: linux-next: manual merge of the block tree with the tree

From: Dave Kleikamp <[email-masked]>
Date: Thu, 07 Nov 2013 20:32:21 -0600

On 11/07/2013 08:08 PM, Kent Overstreet wrote:
> On Fri, Nov 08, 2013 at 12:53:07PM +1100, Stephen Rothwell wrote:
>> Hi all,
>>
>> On Thu, 07 Nov 2013 18:04:57 -0600 Dave Kleikamp <[email-masked]> wrote:
>>>
>>> Can you please drop the aio-direct tree for the time being?
>>
>> OK, I was afraid of this, but, yes, I can drop it.  I am not quite sure
>> what affect this will have on Andrew's tree, though (hopefully not too
>> much).
>>
>> This is a bit disappointing.  Dave's stuff have been sitting in
>> linux-next for quite some time (probably too long) so it is not as if
>> Kent and Jens (should) have been unaware of it.
> 
> Yeah, I have to apologize for not noticing sooner. Mea culpa. That said, we
> spent some time hashing things out on IRC and I'm pretty excited for the new
> plan; Zach Brown also had some good input.

Right. I should have been more proactive in discussing things with the
aio folks as well. After a good discussion with Kent and Zach, I feel
that my stuff will fit in better after Kent's dio rewrite than the
current implementation. We were both working towards very similar goals
and Kent's stuff would probably have ended up replacing a good portion
of my patchset resulting in unnecessary churn in the direct-io path.

>>> My stuff is not aligning very well with the immutable biovecs and Kent
>>> has a different approach in mind. I'll be working with him on a
>>> replacement that will hopefully be simpler.
>>
>> Presumably not before v3.14, right?
> 
> Yeah, the gist of it is that loopback driver is going to be passing bios
> directly to the dio code - my dio rewrite gets us most of the way there, and
> after immutable biovecs there's only ~3 (much simpler) patches left that the dio
> rewrite depends on.
> 
> The remaining issue to deal with is the fact that on writes, the dio code bails
> out if it hits an unmapped block (i.e. a hole) and filemap.c finishes it up with
> the buffered io code - we need the dio code to handle that in a self contained
> fashion. Zach had a (horribly ugly, but definitely workable) idea for that, so
> I'm feeling pretty optimistic about this right now.
>