Re: [RFC v3 0/4] vfs: Non-blockling buffered fs read (page cache only)

From: Jan Kara
Date: Thu Sep 25 2014 - 07:17:04 EST

On Thu 25-09-14 06:06:14, Michael Kerrisk wrote:
> Hello Milosz,
> On Wed, Sep 24, 2014 at 11:46 PM, Milosz Tanski <milosz@xxxxxxxxx> wrote:
> > This patcheset introduces an ability to perform a non-blocking read from
> > regular files in buffered IO mode. This works by only for those filesystems
> > that have data in the page cache.
> >
> > It does this by introducing new syscalls new syscalls preadv2/pwritev2. These
> > new syscalls behave like the network sendmsg, recvmsg syscalls that accept an
> > extra flag argument (RWF_NONBLOCK).
> >
> > It's a very common patern today (samba, libuv, etc..) use a large threadpool to
> > perform buffered IO operations. They submit the work form another thread
> > that performs network IO and epoll or other threads that perform CPU work. This
> > leads to increased latency for processing, esp. in the case of data that's
> > already cached in the page cache.
> >
> > With the new interface the applications will now be able to fetch the data in
> > their network / cpu bound thread(s) and only defer to a threadpool if it's not
> > there. In our own application (VLDB) we've observed a decrease in latency for
> > "fast" request by avoiding unnecessary queuing and having to swap out current
> > tasks in IO bound work threads.
> Since this is a change to the user-space API, could you CC future
> versions of this patch set to linux-api@xxxxxxxxxxxxxxxx please, as
There's typo in the address. It should be:

Jan Kara <jack@xxxxxxx>
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at