From: Akinobu Mita Check ext3_journal_get_write_access() errors. Signed-off-by: Akinobu Mita Cc: Signed-off-by: Andrew Morton --- fs/ext3/namei.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff -puN fs/ext3/namei.c~ext3-check-ext3_journal_get_write_access-errors fs/ext3/namei.c --- a/fs/ext3/namei.c~ext3-check-ext3_journal_get_write_access-errors +++ a/fs/ext3/namei.c @@ -57,10 +57,15 @@ static struct buffer_head *ext3_append(h *block = inode->i_size >> inode->i_sb->s_blocksize_bits; - if ((bh = ext3_bread(handle, inode, *block, 1, err))) { + bh = ext3_bread(handle, inode, *block, 1, err); + if (bh) { inode->i_size += inode->i_sb->s_blocksize; EXT3_I(inode)->i_disksize = inode->i_size; - ext3_journal_get_write_access(handle,bh); + *err = ext3_journal_get_write_access(handle, bh); + if (*err) { + brelse(bh); + bh = NULL; + } } return bh; } _