提交 e1bf4cc6 编写于 作者: A Al Viro

ocfs: ->rl_used breakage on big-endian

it's le16, not le32 or le64...
Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
上级 3a251f04
...@@ -1468,7 +1468,7 @@ static int ocfs2_divide_leaf_refcount_block(struct buffer_head *ref_leaf_bh, ...@@ -1468,7 +1468,7 @@ static int ocfs2_divide_leaf_refcount_block(struct buffer_head *ref_leaf_bh,
trace_ocfs2_divide_leaf_refcount_block( trace_ocfs2_divide_leaf_refcount_block(
(unsigned long long)ref_leaf_bh->b_blocknr, (unsigned long long)ref_leaf_bh->b_blocknr,
le32_to_cpu(rl->rl_count), le32_to_cpu(rl->rl_used)); le32_to_cpu(rl->rl_count), le16_to_cpu(rl->rl_used));
/* /*
* XXX: Improvement later. * XXX: Improvement later.
...@@ -2411,7 +2411,7 @@ static int ocfs2_calc_refcount_meta_credits(struct super_block *sb, ...@@ -2411,7 +2411,7 @@ static int ocfs2_calc_refcount_meta_credits(struct super_block *sb,
rb = (struct ocfs2_refcount_block *) rb = (struct ocfs2_refcount_block *)
prev_bh->b_data; prev_bh->b_data;
if (le64_to_cpu(rb->rf_records.rl_used) + if (le16_to_cpu(rb->rf_records.rl_used) +
recs_add > recs_add >
le16_to_cpu(rb->rf_records.rl_count)) le16_to_cpu(rb->rf_records.rl_count))
ref_blocks++; ref_blocks++;
...@@ -2476,7 +2476,7 @@ static int ocfs2_calc_refcount_meta_credits(struct super_block *sb, ...@@ -2476,7 +2476,7 @@ static int ocfs2_calc_refcount_meta_credits(struct super_block *sb,
if (prev_bh) { if (prev_bh) {
rb = (struct ocfs2_refcount_block *)prev_bh->b_data; rb = (struct ocfs2_refcount_block *)prev_bh->b_data;
if (le64_to_cpu(rb->rf_records.rl_used) + recs_add > if (le16_to_cpu(rb->rf_records.rl_used) + recs_add >
le16_to_cpu(rb->rf_records.rl_count)) le16_to_cpu(rb->rf_records.rl_count))
ref_blocks++; ref_blocks++;
...@@ -3629,7 +3629,7 @@ int ocfs2_refcounted_xattr_delete_need(struct inode *inode, ...@@ -3629,7 +3629,7 @@ int ocfs2_refcounted_xattr_delete_need(struct inode *inode,
* one will split a refcount rec, so totally we need * one will split a refcount rec, so totally we need
* clusters * 2 new refcount rec. * clusters * 2 new refcount rec.
*/ */
if (le64_to_cpu(rb->rf_records.rl_used) + clusters * 2 > if (le16_to_cpu(rb->rf_records.rl_used) + clusters * 2 >
le16_to_cpu(rb->rf_records.rl_count)) le16_to_cpu(rb->rf_records.rl_count))
ref_blocks++; ref_blocks++;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册