From: Trond Myklebust <trond.myklebust@fys.uio.no>
To: Andrew Morton <akpm@osdl.org>
Cc: linux-kernel@vger.kernel.org,
Linux Filesystem Development <linux-fsdevel@vger.kernel.org>
Subject: Re: [RFC] Add support for semaphore-like structure with support for asynchronous I/O
Date: Thu, 31 Mar 2005 20:22:17 -0500 [thread overview]
Message-ID: <1112318537.11284.10.camel@lade.trondhjem.org> (raw)
In-Reply-To: <20050331161350.0dc7d376.akpm@osdl.org>
to den 31.03.2005 Klokka 16:13 (-0800) skreiv Andrew Morton:
> Trond Myklebust <trondmy@trondhjem.org> wrote:
> >
> > on den 30.03.2005 Klokka 18:17 (-0500) skreiv Trond Myklebust:
> > > > Or have I misunderstood the intent? Some /* comments */ would be appropriate..
> > >
> > > Will do.
> >
> > OK. Plenty of comments added that will hopefully clarify what is going
> > on and how to use the API. Also some cleanups of the code.
>
> Ah, so that's what it does ;)
>
> I guess once we have a caller in-tree we could merge this. I wonder if
> there's other existing code which should be converted to iosems.
I can put it into the NFS client stream which feeds into the -mm kernel.
That will enable me to queue up the NFSv4 patches that depend on it
too...
> You chose to not use the aio kernel threads?
I thought I'd do that in a separate patch since the aio workqueue is
currently statically defined in aio.c.
> Does iosem_lock_and_schedule_function() need locking? It nonatomically
> alters *lk_state.
iosem_lock_and_schedule_function() will always be called with the
iosem->wait.lock held, since it is a waitqueue notification function.
In practice it is called by iosem_unlock(). The call to wake_up_locked()
will trigger a call to __wake_up_common() which again tries the
notification function of each waiter on the queue until it finds one
that succeeds.
Cheers,
Trond
--
Trond Myklebust <trond.myklebust@fys.uio.no>
next prev parent reply other threads:[~2005-04-01 1:22 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-03-30 21:51 [RFC] Add support for semaphore-like structure with support for asynchronous I/O Trond Myklebust
2005-03-30 22:34 ` Andrew Morton
2005-03-30 23:17 ` Trond Myklebust
2005-03-30 23:44 ` Andrew Morton
2005-03-31 0:02 ` Trond Myklebust
2005-03-31 22:53 ` Trond Myklebust
2005-04-01 0:13 ` Andrew Morton
2005-04-01 1:22 ` Trond Myklebust [this message]
2005-04-01 14:12 ` Suparna Bhattacharya
2005-04-04 15:52 ` Suparna Bhattacharya
2005-04-04 16:22 ` Benjamin LaHaise
2005-04-04 17:56 ` Trond Myklebust
2005-04-05 15:46 ` Benjamin LaHaise
2005-04-06 1:20 ` Trond Myklebust
2005-04-06 5:17 ` Bill Huey
2005-04-06 5:01 ` Suparna Bhattacharya
2005-04-07 11:43 ` Christoph Hellwig
2005-04-08 22:39 ` Benjamin LaHaise
2005-04-08 23:31 ` Trond Myklebust
2005-04-10 14:08 ` Suparna Bhattacharya
2005-04-15 16:13 ` David Howells
2005-04-15 22:42 ` Trond Myklebust
2005-04-15 23:42 ` Benjamin LaHaise
2005-04-16 11:12 ` David Howells
2005-04-16 11:06 ` David Howells
2005-04-04 16:39 ` Trond Myklebust
2005-03-31 8:02 ` Nikita Danilov
2005-03-31 12:31 ` Trond Myklebust
2005-03-31 17:09 ` Nikita Danilov
2005-03-31 17:22 ` Trond Myklebust
2005-03-31 17:32 ` Trond Myklebust
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1112318537.11284.10.camel@lade.trondhjem.org \
--to=trond.myklebust@fys.uio.no \
--cc=akpm@osdl.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).