mirror of
https://github.com/torvalds/linux.git
synced 2024-11-23 04:31:50 +00:00
xfs: move xattr scrub buffer allocation to top level function
Move the xchk_setup_xattr_buf call from xchk_xattr_block to xchk_xattr, since we only need to set up the leaf block bitmaps once. Signed-off-by: Darrick J. Wong <djwong@kernel.org> Reviewed-by: Dave Chinner <dchinner@redhat.com>
This commit is contained in:
parent
f58977edc0
commit
5b02a3e839
@ -346,18 +346,10 @@ xchk_xattr_block(
|
||||
unsigned int usedbytes = 0;
|
||||
unsigned int hdrsize;
|
||||
int i;
|
||||
int error;
|
||||
|
||||
if (*last_checked == blk->blkno)
|
||||
return 0;
|
||||
|
||||
/* Allocate memory for block usage checking. */
|
||||
error = xchk_setup_xattr_buf(ds->sc, 0);
|
||||
if (error == -ENOMEM)
|
||||
return -EDEADLOCK;
|
||||
if (error)
|
||||
return error;
|
||||
|
||||
*last_checked = blk->blkno;
|
||||
bitmap_zero(ab->usedmap, mp->m_attr_geo->blksize);
|
||||
|
||||
@ -507,6 +499,13 @@ xchk_xattr(
|
||||
if (!xfs_inode_hasattr(sc->ip))
|
||||
return -ENOENT;
|
||||
|
||||
/* Allocate memory for xattr checking. */
|
||||
error = xchk_setup_xattr_buf(sc, 0);
|
||||
if (error == -ENOMEM)
|
||||
return -EDEADLOCK;
|
||||
if (error)
|
||||
return error;
|
||||
|
||||
memset(&sx, 0, sizeof(sx));
|
||||
/* Check attribute tree structure */
|
||||
error = xchk_da_btree(sc, XFS_ATTR_FORK, xchk_xattr_rec,
|
||||
|
Loading…
Reference in New Issue
Block a user