ext4: avoid buffer leak in ext4_orphan_add() after prior errors
Fixes:d745a8c20c
("ext4: reduce contention on s_orphan_lock") Fixes:6e3617e579
("ext4: Handle non empty on-disk orphan link") Cc: Dmitry Monakhov <dmonakhov@gmail.com> Signed-off-by: Vasily Averin <vvs@virtuozzo.com> Signed-off-by: Theodore Ts'o <tytso@mit.edu> Cc: stable@kernel.org # 2.6.34
This commit is contained in:
parent
a6758309a0
commit
feaf264ce7
|
@ -2811,7 +2811,9 @@ int ext4_orphan_add(handle_t *handle, struct inode *inode)
|
||||||
list_del_init(&EXT4_I(inode)->i_orphan);
|
list_del_init(&EXT4_I(inode)->i_orphan);
|
||||||
mutex_unlock(&sbi->s_orphan_lock);
|
mutex_unlock(&sbi->s_orphan_lock);
|
||||||
}
|
}
|
||||||
}
|
} else
|
||||||
|
brelse(iloc.bh);
|
||||||
|
|
||||||
jbd_debug(4, "superblock will point to %lu\n", inode->i_ino);
|
jbd_debug(4, "superblock will point to %lu\n", inode->i_ino);
|
||||||
jbd_debug(4, "orphan inode %lu will point to %d\n",
|
jbd_debug(4, "orphan inode %lu will point to %d\n",
|
||||||
inode->i_ino, NEXT_ORPHAN(inode));
|
inode->i_ino, NEXT_ORPHAN(inode));
|
||||||
|
|
Loading…
Reference in New Issue