Re: [RFC PATCH 0/7] Non-blockling buffered fs read (page cache only)

From: Christoph Hellwig
Date: Mon Sep 22 2014 - 12:42:48 EST


On Mon, Sep 22, 2014 at 12:32:02PM -0400, Milosz Tanski wrote:
> I spent some time thinking about multi-position scatter/gather in
> context of this over the weekend. The non-blocking case seams easy,
> the implementation I purposed needs an extra loop. Where this gets
> hairy is making the non-trivial blocking case work well (as in have
> concurrent requests for each of the ranges) in the filesystem code. If
> that's the road we're going to go down I have a gut feeling we're
> going to get stuck in the same spot(s) as the other non-blocking
> buffered r/w attempts from the past.

The other thing sis that we have a basically ready, easy to use
implementation of flagged I/O (my name for the new syscalls), while
S/G I/O will take forever to discuss and is the natual vehicle for
other extensions like T10 DIX.

I'd like to suggest you consolidate your syscalls down from 4 to 2
as suggestes by overloading the negative offset argument, giving
us two more syscalls slows for S/G once it's ready. Note that
a sync S/G syscalls should of course also support these flags, although
I suspect the primary use cases for S/G I/O would be through the aio
machinery.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/