On Fri, Mar 10, 2006 at 11:50:20AM +1100, Nathan Scott wrote:
> On Fri, Mar 10, 2006 at 10:14:22AM +1100, Nathan Scott wrote:
> > On Thu, Mar 09, 2006 at 10:42:19PM +0000, Christoph Hellwig wrote:
> > > On Fri, Mar 10, 2006 at 09:30:42AM +1100, Nathan Scott wrote:
> > > > Not for reads AFAICT - __generic_file_aio_read + own-locking
> > > > should always have released i_mutex at the end of the direct
> > > > read - are you thinking of writes or have I missed something?
> > >
> > > if an error occurs before a_ops->direct_IO is called
> > > __generic_file_aio_read
> > > will return with i_mutex still locked. Note that checking for negative
> > > return values is not enough as __blockdev_direct_IO can return errors
> > > aswell.
> > *groan* - right you are. Another option may be to have the
> > generic dio+own-locking case reacquire i_mutex if it drops
> > it, before returning... thoughts? Seems alot less invasive
> > than the filemap.c code dup'ing thing.
> Something like this (works OK for me)...
Is this 2.6.16 material?
"Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
"Only a promise," Lao Er said.
Pearl S. Buck - Dragon Seed