[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20160112014509.z6xefgc2rrkytmvk@ret.masoncoding.com>
Date: Mon, 11 Jan 2016 20:45:09 -0500
From: Chris Mason <clm@...com>
To: Linus Torvalds <torvalds@...ux-foundation.org>
CC: Benjamin LaHaise <bcrl@...ck.org>, Ingo Molnar <mingo@...nel.org>,
<linux-aio@...ck.org>,
linux-fsdevel <linux-fsdevel@...r.kernel.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Linux API <linux-api@...r.kernel.org>,
linux-mm <linux-mm@...ck.org>,
Alexander Viro <viro@...iv.linux.org.uk>,
Andrew Morton <akpm@...ux-foundation.org>
Subject: Re: [PATCH 09/13] aio: add support for async openat()
On Mon, Jan 11, 2016 at 04:22:28PM -0800, Linus Torvalds wrote:
> On Mon, Jan 11, 2016 at 2:07 PM, Benjamin LaHaise <bcrl@...ck.org> wrote:
> > Another blocking operation used by applications that want aio
> > functionality is that of opening files that are not resident in memory.
> > Using the thread based aio helper, add support for IOCB_CMD_OPENAT.
>
> So I think this is ridiculously ugly.
>
> AIO is a horrible ad-hoc design, with the main excuse being "other,
> less gifted people, made that design, and we are implementing it for
> compatibility because database people - who seldom have any shred of
> taste - actually use it".
>
> But AIO was always really really ugly.
>
> Now you introduce the notion of doing almost arbitrary system calls
> asynchronously in threads, but then you use that ass-backwards nasty
> interface to do so.
[ ... ]
> I'm adding Ingo the to cc, because I think Ingo had a "run this list
> of system calls" patch at one point - in order to avoid system call
> overhead. I don't think that was very interesting (because system call
> overhead is seldom all that noticeable for any interesting system
> calls), but with the "let's do the list asynchronously" addition it
> might be much more intriguing. Ingo, do I remember correctly that it
> was you? I might be confused about who wrote that patch, and I can't
> find it now.
Zach Brown and Ingo traded a bunch of ideas. There were chicklets and
syslets? A little search, it looks like acall was a slightly different
iteration, but the patches didn't make it off oss.oracle.com:
https://lwn.net/Articles/316806/
-chris
Powered by blists - more mailing lists