mirror of
https://github.com/torvalds/linux.git
synced 2026-05-22 14:12:07 +02:00
xfs: refactor xfs_btree_diff_two_ptrs() to take advantage of cmp_int()
Use cmp_int() to yield the result of a three-way-comparison instead of performing subtractions with extra casts. Thus also rename the function to make its name clearer in purpose. Found by Linux Verification Center (linuxtesting.org). Signed-off-by: Fedor Pchelkin <pchelkin@ispras.ru> Reviewed-by: Darrick J. Wong <djwong@kernel.org> Signed-off-by: Carlos Maiolino <cem@kernel.org>
This commit is contained in:
parent
2717eb3518
commit
ce6cce46af
|
|
@ -5353,15 +5353,15 @@ xfs_btree_count_blocks(
|
|||
}
|
||||
|
||||
/* Compare two btree pointers. */
|
||||
int64_t
|
||||
xfs_btree_diff_two_ptrs(
|
||||
int
|
||||
xfs_btree_cmp_two_ptrs(
|
||||
struct xfs_btree_cur *cur,
|
||||
const union xfs_btree_ptr *a,
|
||||
const union xfs_btree_ptr *b)
|
||||
{
|
||||
if (cur->bc_ops->ptr_len == XFS_BTREE_LONG_PTR_LEN)
|
||||
return (int64_t)be64_to_cpu(a->l) - be64_to_cpu(b->l);
|
||||
return (int64_t)be32_to_cpu(a->s) - be32_to_cpu(b->s);
|
||||
return cmp_int(be64_to_cpu(a->l), be64_to_cpu(b->l));
|
||||
return cmp_int(be32_to_cpu(a->s), be32_to_cpu(b->s));
|
||||
}
|
||||
|
||||
struct xfs_btree_has_records {
|
||||
|
|
|
|||
|
|
@ -519,9 +519,9 @@ struct xfs_btree_block *xfs_btree_get_block(struct xfs_btree_cur *cur,
|
|||
int level, struct xfs_buf **bpp);
|
||||
bool xfs_btree_ptr_is_null(struct xfs_btree_cur *cur,
|
||||
const union xfs_btree_ptr *ptr);
|
||||
int64_t xfs_btree_diff_two_ptrs(struct xfs_btree_cur *cur,
|
||||
const union xfs_btree_ptr *a,
|
||||
const union xfs_btree_ptr *b);
|
||||
int xfs_btree_cmp_two_ptrs(struct xfs_btree_cur *cur,
|
||||
const union xfs_btree_ptr *a,
|
||||
const union xfs_btree_ptr *b);
|
||||
void xfs_btree_get_sibling(struct xfs_btree_cur *cur,
|
||||
struct xfs_btree_block *block,
|
||||
union xfs_btree_ptr *ptr, int lr);
|
||||
|
|
|
|||
|
|
@ -306,7 +306,7 @@ xchk_btree_block_check_sibling(
|
|||
if (pbp)
|
||||
xchk_buffer_recheck(bs->sc, pbp);
|
||||
|
||||
if (xfs_btree_diff_two_ptrs(cur, pp, sibling))
|
||||
if (xfs_btree_cmp_two_ptrs(cur, pp, sibling))
|
||||
xchk_btree_set_corrupt(bs->sc, cur, level);
|
||||
out:
|
||||
xfs_btree_del_cursor(ncur, XFS_BTREE_ERROR);
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user