Commit 40bd62eb7fb8447798732e809a676ebaf2a7f910
Committed by
Linus Torvalds
1 parent
33add0e3a0
Exists in
smarc-imx_3.14.28_1.0.0_ga
and in
1 other branch
fs/ocfs2/journal.h: add bits_wanted while calculating credits in ocfs2_calc_extend_credits
While adding extends to a file, the credits are calculated incorrectly and if the requested clusters is more than one (or more because we used a conservative limit) then we run out of journal credits and we hit an assert in journalling code. The function parameter bits_wanted variable was not used at all. Signed-off-by: Goldwyn Rodrigues <rgoldwyn@suse.com> Reviewed-by: Jie Liu <jeff.liu@oracle.com> Cc: Joel Becker <jlbec@evilplan.org> Cc: Mark Fasheh <mfasheh@suse.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Showing 1 changed file with 1 additions and 1 deletions Side-by-side Diff
fs/ocfs2/journal.h
... | ... | @@ -537,7 +537,7 @@ |
537 | 537 | extent_blocks = 1 + 1 + le16_to_cpu(root_el->l_tree_depth); |
538 | 538 | |
539 | 539 | return bitmap_blocks + sysfile_bitmap_blocks + extent_blocks + |
540 | - ocfs2_quota_trans_credits(sb); | |
540 | + ocfs2_quota_trans_credits(sb) + bits_wanted; | |
541 | 541 | } |
542 | 542 | |
543 | 543 | static inline int ocfs2_calc_symlink_credits(struct super_block *sb) |