diff options
author | Theodore Ts'o <tytso@mit.edu> | 2013-02-09 12:50:27 -0500 |
---|---|---|
committer | Theodore Ts'o <tytso@mit.edu> | 2013-02-09 12:50:27 -0500 |
commit | 4b217630d0ec277c961e57f6d2985433b352c2ce (patch) | |
tree | f3c5b921d2dd825677b73ee4d4fb97c586d7661a /fs/ext4 | |
parent | 8dcfaad244cdfa245cc2b4ddf42cea5fd8b80ece (diff) |
ext4: fix the number of credits needed for ext4_ext_migrate()
The migration ioctl creates a temporary inode. Since this inode is
never linked to a directory, we don't need to reserve journal credits
required for modifying the directory.
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Reviewed-by: Jan Kara <jack@suse.cz>
Diffstat (limited to 'fs/ext4')
-rw-r--r-- | fs/ext4/migrate.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/fs/ext4/migrate.c b/fs/ext4/migrate.c index 4e4fcfd342f8..480acf4a085f 100644 --- a/fs/ext4/migrate.c +++ b/fs/ext4/migrate.c | |||
@@ -456,11 +456,14 @@ int ext4_ext_migrate(struct inode *inode) | |||
456 | */ | 456 | */ |
457 | return retval; | 457 | return retval; |
458 | 458 | ||
459 | /* | ||
460 | * Worst case we can touch the allocation bitmaps, a bgd | ||
461 | * block, and a block to link in the orphan list. We do need | ||
462 | * need to worry about credits for modifying the quota inode. | ||
463 | */ | ||
459 | handle = ext4_journal_start(inode, EXT4_HT_MIGRATE, | 464 | handle = ext4_journal_start(inode, EXT4_HT_MIGRATE, |
460 | EXT4_DATA_TRANS_BLOCKS(inode->i_sb) + | 465 | 4 + EXT4_MAXQUOTAS_TRANS_BLOCKS(inode->i_sb)); |
461 | EXT4_INDEX_EXTRA_TRANS_BLOCKS + 3 + | 466 | |
462 | EXT4_MAXQUOTAS_INIT_BLOCKS(inode->i_sb) | ||
463 | + 1); | ||
464 | if (IS_ERR(handle)) { | 467 | if (IS_ERR(handle)) { |
465 | retval = PTR_ERR(handle); | 468 | retval = PTR_ERR(handle); |
466 | return retval; | 469 | return retval; |