Re: 2.6.29 -mm merge plans

Dmitri Monakhov
2009-01-08T15:52:55Z

Dave Chinner <david@fromorbit.com> writes:

> On Tue, Jan 06, 2009 at 06:22:08PM -0500, Christoph Hellwig wrote:
>> On Tue, Jan 06, 2009 at 03:08:55PM -0800, Andrew Morton wrote:
>> > > Btw, this code is still not quite right. We really need to call
>> > > ->setattr instead of vmtruncate here. Complex filesystem need
>> > > transaction to properly free blocks, and those transactions are in
>> > > ->setattr not inside vmtruncate where ->truncate doesn't even have
>> > > a chance to get the handle to the transaction passed.
In fact ext3/4 opens transaction inside ->truncate() callback, but
because of function signature we can not properly handle any
errors inside truncate(see akpm's comment inside function)
>> > >
>> > > As these patches don't make it worse this is not a NACK, but more of
>> > > a heads up.
>> >
>> > Sure. Maybe add a FIXME comment for now?
>>
>> Ok. I was planning to look into this again, and IIRC Dave already did
>> when he was at SGI, but his proof of concept patches got lost somewhere.
>
> Hmmmm - I think I posted the "it works for XFs but nothing else" POC
> patches to fsdevel when I first found this....
>
> <rummage>
>
> http://marc.info/?l=linux-fsdevel&m=120952722315259&w=2
>
> The thread starts here for those that want the whole story:
>
> http://marc.info/?l=linux-fsdevel&m=120946361527726&w=2
So AFAIU your proposal: for general(DIO_LOCKING) filesystems
ATTR_NO_LOCK means what i_mutex and i_alloc_sem already held.

>
> Cheers,
>
> Dave.