Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 129dbc9a authored by Christoph Hellwig's avatar Christoph Hellwig Committed by Ben Myers
Browse files

xfs: remove xfs_inotobp



There is no need to keep this helper around, opencoding it in the only
caller is just as clear.

Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
Reviewed-by: default avatarMark Tinguely <tinguely@sgi.com>
Signed-off-by: default avatarBen Myers <bpm@sgi.com>
parent 475ee413
Loading
Loading
Loading
Loading
+19 −51
Original line number Original line Diff line number Diff line
@@ -215,47 +215,6 @@ xfs_imap_to_bp(
	return 0;
	return 0;
}
}


/*
 * This routine is called to map an inode number within a file
 * system to the buffer containing the on-disk version of the
 * inode.  It returns a pointer to the buffer containing the
 * on-disk inode in the bpp parameter, and in the dip parameter
 * it returns a pointer to the on-disk inode within that buffer.
 *
 * If a non-zero error is returned, then the contents of bpp and
 * dipp are undefined.
 *
 * Use xfs_imap() to determine the size and location of the
 * buffer to read from disk.
 */
int
xfs_inotobp(
	xfs_mount_t	*mp,
	xfs_trans_t	*tp,
	xfs_ino_t	ino,
	xfs_dinode_t	**dipp,
	xfs_buf_t	**bpp,
	int		*offset,
	uint		imap_flags)
{
	struct xfs_imap	imap;
	xfs_buf_t	*bp;
	int		error;

	imap.im_blkno = 0;
	error = xfs_imap(mp, tp, ino, &imap, imap_flags);
	if (error)
		return error;

	error = xfs_imap_to_bp(mp, tp, &imap, dipp, &bp, 0, imap_flags);
	if (error)
		return error;

	*bpp = bp;
	*offset = imap.im_boffset;
	return 0;
}

/*
/*
 * Move inode type and inode format specific information from the
 * Move inode type and inode format specific information from the
 * on-disk inode to the in-core inode.  For fifos, devs, and sockets
 * on-disk inode to the in-core inode.  For fifos, devs, and sockets
@@ -1431,23 +1390,32 @@ xfs_iunlink_remove(
		next_agino = be32_to_cpu(agi->agi_unlinked[bucket_index]);
		next_agino = be32_to_cpu(agi->agi_unlinked[bucket_index]);
		last_ibp = NULL;
		last_ibp = NULL;
		while (next_agino != agino) {
		while (next_agino != agino) {
			/*
			struct xfs_imap	imap;
			 * If the last inode wasn't the one pointing to

			 * us, then release its buffer since we're not
			if (last_ibp)
			 * going to do anything with it.
			 */
			if (last_ibp != NULL) {
				xfs_trans_brelse(tp, last_ibp);
				xfs_trans_brelse(tp, last_ibp);
			}

			imap.im_blkno = 0;
			next_ino = XFS_AGINO_TO_INO(mp, agno, next_agino);
			next_ino = XFS_AGINO_TO_INO(mp, agno, next_agino);
			error = xfs_inotobp(mp, tp, next_ino, &last_dip,

					    &last_ibp, &last_offset, 0);
			error = xfs_imap(mp, tp, next_ino, &imap, 0);
			if (error) {
			if (error) {
				xfs_warn(mp,
				xfs_warn(mp,
					"%s: xfs_inotobp() returned error %d.",
	"%s: xfs_imap returned error %d.",
					 __func__, error);
					 __func__, error);
				return error;
				return error;
			}
			}

			error = xfs_imap_to_bp(mp, tp, &imap, &last_dip,
					       &last_ibp, 0, 0);
			if (error) {
				xfs_warn(mp,
	"%s: xfs_imap_to_bp returned error %d.",
					__func__, error);
				return error;
			}

			last_offset = imap.im_boffset;
			next_agino = be32_to_cpu(last_dip->di_next_unlinked);
			next_agino = be32_to_cpu(last_dip->di_next_unlinked);
			ASSERT(next_agino != NULLAGINO);
			ASSERT(next_agino != NULLAGINO);
			ASSERT(next_agino != 0);
			ASSERT(next_agino != 0);
+0 −3
Original line number Original line Diff line number Diff line
@@ -557,9 +557,6 @@ do { \
#define XFS_IGET_UNTRUSTED	0x2
#define XFS_IGET_UNTRUSTED	0x2
#define XFS_IGET_DONTCACHE	0x4
#define XFS_IGET_DONTCACHE	0x4


int		xfs_inotobp(struct xfs_mount *, struct xfs_trans *,
			    xfs_ino_t, struct xfs_dinode **,
			    struct xfs_buf **, int *, uint);
int		xfs_imap_to_bp(struct xfs_mount *, struct xfs_trans *,
int		xfs_imap_to_bp(struct xfs_mount *, struct xfs_trans *,
			       struct xfs_imap *, struct xfs_dinode **,
			       struct xfs_imap *, struct xfs_dinode **,
			       struct xfs_buf **, uint, uint);
			       struct xfs_buf **, uint, uint);