mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-10 14:19:09 -04:00
ext4: Make ext4_get_blocks_wrap take the truncate_mutex early.
When doing a migrate from ext3 to ext4 inode we need to make sure the test for inode type and walking inode data happens inside lock. To make this happen move truncate_mutex early before checking the i_flags. This actually should enable us to remove the verify_chain(). Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
This commit is contained in:
parent
01f4adc044
commit
c278bfeceb
3 changed files with 16 additions and 64 deletions
|
|
@ -1113,6 +1113,7 @@ ext4_get_blocks_wrap(handle_t *handle, struct inode *inode, sector_t block,
|
|||
int create, int extend_disksize)
|
||||
{
|
||||
int retval;
|
||||
mutex_lock(&EXT4_I(inode)->truncate_mutex);
|
||||
if (EXT4_I(inode)->i_flags & EXT4_EXTENTS_FL) {
|
||||
retval = ext4_ext_get_blocks(handle, inode,
|
||||
(ext4_lblk_t)block, max_blocks,
|
||||
|
|
@ -1122,6 +1123,7 @@ ext4_get_blocks_wrap(handle_t *handle, struct inode *inode, sector_t block,
|
|||
(ext4_lblk_t)block, max_blocks,
|
||||
bh, create, extend_disksize);
|
||||
}
|
||||
mutex_unlock(&EXT4_I(inode)->truncate_mutex);
|
||||
return retval;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue