mirror of
https://github.com/torvalds/linux.git
synced 2024-11-15 00:21:59 +00:00
xfs: rename xchk_get_inode -> xchk_iget_for_scrubbing
Dave Chinner suggested renaming this function to make more obvious what it does. The function returns an incore inode to callers that want to scrub a metadata structure that hangs off an inode. If the iget fails with EINVAL, it will single-step the loading process to distinguish between actually free inodes or impossible inumbers (ENOENT); discrepancies between the inobt freemask and the free status in the inode record (EFSCORRUPTED). Any other negative errno is returned unchanged. Signed-off-by: Darrick J. Wong <djwong@kernel.org> Reviewed-by: Dave Chinner <dchinner@redhat.com>
This commit is contained in:
parent
302436c27c
commit
46e0dd8965
@ -34,7 +34,7 @@ xchk_setup_inode_bmap(
|
||||
if (xchk_need_intent_drain(sc))
|
||||
xchk_fsgates_enable(sc, XCHK_FSGATES_DRAIN);
|
||||
|
||||
error = xchk_get_inode(sc);
|
||||
error = xchk_iget_for_scrubbing(sc);
|
||||
if (error)
|
||||
goto out;
|
||||
|
||||
|
@ -832,12 +832,14 @@ xchk_install_handle_inode(
|
||||
}
|
||||
|
||||
/*
|
||||
* Given an inode and the scrub control structure, grab either the
|
||||
* inode referenced in the control structure or the inode passed in.
|
||||
* The inode is not locked.
|
||||
* In preparation to scrub metadata structures that hang off of an inode,
|
||||
* grab either the inode referenced in the scrub control structure or the
|
||||
* inode passed in. If the inumber does not reference an allocated inode
|
||||
* record, the function returns ENOENT to end the scrub early. The inode
|
||||
* is not locked.
|
||||
*/
|
||||
int
|
||||
xchk_get_inode(
|
||||
xchk_iget_for_scrubbing(
|
||||
struct xfs_scrub *sc)
|
||||
{
|
||||
struct xfs_imap imap;
|
||||
@ -994,7 +996,7 @@ xchk_setup_inode_contents(
|
||||
{
|
||||
int error;
|
||||
|
||||
error = xchk_get_inode(sc);
|
||||
error = xchk_iget_for_scrubbing(sc);
|
||||
if (error)
|
||||
return error;
|
||||
|
||||
|
@ -135,7 +135,7 @@ int xchk_count_rmap_ownedby_ag(struct xfs_scrub *sc, struct xfs_btree_cur *cur,
|
||||
const struct xfs_owner_info *oinfo, xfs_filblks_t *blocks);
|
||||
|
||||
int xchk_setup_ag_btree(struct xfs_scrub *sc, bool force_log);
|
||||
int xchk_get_inode(struct xfs_scrub *sc);
|
||||
int xchk_iget_for_scrubbing(struct xfs_scrub *sc);
|
||||
int xchk_setup_inode_contents(struct xfs_scrub *sc, unsigned int resblks);
|
||||
void xchk_buffer_recheck(struct xfs_scrub *sc, struct xfs_buf *bp);
|
||||
|
||||
|
@ -39,7 +39,7 @@ xchk_setup_inode(
|
||||
* Try to get the inode. If the verifiers fail, we try again
|
||||
* in raw mode.
|
||||
*/
|
||||
error = xchk_get_inode(sc);
|
||||
error = xchk_iget_for_scrubbing(sc);
|
||||
switch (error) {
|
||||
case 0:
|
||||
break;
|
||||
|
Loading…
Reference in New Issue
Block a user