On Mon, Apr 02, 2007 at 04:14:59PM -0700, Badari Pulavarty wrote:
> On Mon, 2007-04-02 at 14:09 +0200, Nick Piggin wrote:
> > Updated aops patchset against 2.6.21-rc5.
> > 
> > http://www.kernel.org/pub/linux/kernel/people/npiggin/patches/new-aops/
> > 
> > Files/dirs are 2.6.21-rc5-new-aops*
> 
> Baaah !! You took away ext3 -nobh option :(

Ahh, just the person I wanted to ask! ;) How useful is it, out of curiosity?
What sort of users use it, and what sort of improvements do they get?


> Do you have plans to support nobh versions of block_write_begin/end ?

At the moment I'm looking at doing it another way. Having the seperate
nobh path is quite annoying -- there are still bugs in it and it is
simply less tested (not that the bh path is bug-free either, but it
is better to be able to concentrate on one). So I hope to merge them
at some point to restore that functionality. 


> BTW, I don't see how block_write_end() can ever return < 0.
> If so, here is the cleanup fix for ext3 (no unnecessay checks).

Shouldn't we allow for the possibility?


> ---
>  fs/ext3/inode.c |   11 +++--------
>  1 file changed, 3 insertions(+), 8 deletions(-)
> 
> Index: linux-2.6.21-rc5/fs/ext3/inode.c
> ===================================================================
> --- linux-2.6.21-rc5.orig/fs/ext3/inode.c     2007-04-02 16:01:27.000000000 
> -0700
> +++ linux-2.6.21-rc5/fs/ext3/inode.c  2007-04-02 16:06:39.000000000 -0700
> @@ -1328,8 +1328,6 @@ static int ext3_ordered_write_end(struct
>               if (new_i_size > EXT3_I(inode)->i_disksize)
>                       EXT3_I(inode)->i_disksize = new_i_size;
>               copied = block_write_end(file, mapping, pos, len, copied, page, 
> fsdata);
> -             if (copied < 0)
> -                     ret = copied;
>       }
>       ret2 = ext3_journal_stop(handle);
>       if (!ret)
> @@ -1344,7 +1342,7 @@ static int ext3_writeback_write_end(stru
>  {
>       handle_t *handle = ext3_journal_current_handle();
>       struct inode *inode = file->f_mapping->host;
> -     int ret = 0, ret2;
> +     int ret;
>       loff_t new_i_size;
>  
>       new_i_size = pos + copied;
> @@ -1352,12 +1350,9 @@ static int ext3_writeback_write_end(stru
>               EXT3_I(inode)->i_disksize = new_i_size;
>  
>       copied = block_write_end(file, mapping, pos, len, copied, page, fsdata);
> -     if (copied < 0)
> -             ret = copied;
>  
> -     ret2 = ext3_journal_stop(handle);
> -     if (!ret)
> -             ret = ret2;
> +     ret = ext3_journal_stop(handle);
> +
>       return ret ? ret : copied;
>  }
>  
> 
-
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to