On Fri, Jun 23, 2006 at 05:31:44PM -0400, Benjamin LaHaise ([EMAIL PROTECTED])
wrote:
> On Sat, Jun 24, 2006 at 01:08:27AM +0400, Evgeniy Polyakov wrote:
> > On Fri, Jun 23, 2006 at 04:44:42PM -0400, Benjamin LaHaise ([EMAIL
> > PROTECTED]) wrote:
> > > > AIO completion approach was designed to be used with process context VFS
> > > > update. read/write approach can not cover other types of notifications,
> > > > like inode updates or timers.
> > >
> > > The completion event is 100% generic and does not need to come from
> > > process
> > > context. Calling aio_complete() from irq context is entirely valid.
> >
> > put_ioctx() can sleep.
>
> Err, no, that should definately not be the case. If it can, someone has
> completely broken aio.
When reference counter hits zero it flushes aio workqueue, which can
sleep.
put_ioctx() -> __put_ioctx() -> cancel_delayed_work()/flush_workqueue().
It is there at least from 2.6.15 days (it is the oldest tree I can
access using my extremely slow GPRS link).
Hang the looter!
> -ben
--
Evgeniy Polyakov
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html