mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2025-01-06 05:06:29 +00:00
xfs: remove xfs_btree_reada_bufs
xfs_btree_reada_bufl just wraps xfs_btree_readahead and a agblock to daddr conversion. Just open code it's three callsites in the two callers (One of which isn't even btree related). Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Darrick J. Wong <djwong@kernel.org> Signed-off-by: Darrick J. Wong <djwong@kernel.org>
This commit is contained in:
parent
5eec8fa30d
commit
6324b00c9e
@ -889,27 +889,6 @@ xfs_btree_read_bufl(
|
||||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* Read-ahead the block, don't wait for it, don't return a buffer.
|
||||
* Short-form addressing.
|
||||
*/
|
||||
/* ARGSUSED */
|
||||
void
|
||||
xfs_btree_reada_bufs(
|
||||
struct xfs_mount *mp, /* file system mount point */
|
||||
xfs_agnumber_t agno, /* allocation group number */
|
||||
xfs_agblock_t agbno, /* allocation group block number */
|
||||
xfs_extlen_t count, /* count of filesystem blocks */
|
||||
const struct xfs_buf_ops *ops)
|
||||
{
|
||||
xfs_daddr_t d;
|
||||
|
||||
ASSERT(agno != NULLAGNUMBER);
|
||||
ASSERT(agbno != NULLAGBLOCK);
|
||||
d = XFS_AGB_TO_DADDR(mp, agno, agbno);
|
||||
xfs_buf_readahead(mp->m_ddev_targp, d, mp->m_bsize * count, ops);
|
||||
}
|
||||
|
||||
STATIC int
|
||||
xfs_btree_readahead_fsblock(
|
||||
struct xfs_btree_cur *cur,
|
||||
@ -940,22 +919,25 @@ STATIC int
|
||||
xfs_btree_readahead_agblock(
|
||||
struct xfs_btree_cur *cur,
|
||||
int lr,
|
||||
struct xfs_btree_block *block)
|
||||
struct xfs_btree_block *block)
|
||||
{
|
||||
int rval = 0;
|
||||
struct xfs_mount *mp = cur->bc_mp;
|
||||
xfs_agnumber_t agno = cur->bc_ag.pag->pag_agno;
|
||||
xfs_agblock_t left = be32_to_cpu(block->bb_u.s.bb_leftsib);
|
||||
xfs_agblock_t right = be32_to_cpu(block->bb_u.s.bb_rightsib);
|
||||
|
||||
int rval = 0;
|
||||
|
||||
if ((lr & XFS_BTCUR_LEFTRA) && left != NULLAGBLOCK) {
|
||||
xfs_btree_reada_bufs(cur->bc_mp, cur->bc_ag.pag->pag_agno,
|
||||
left, 1, cur->bc_ops->buf_ops);
|
||||
xfs_buf_readahead(mp->m_ddev_targp,
|
||||
XFS_AGB_TO_DADDR(mp, agno, left),
|
||||
mp->m_bsize, cur->bc_ops->buf_ops);
|
||||
rval++;
|
||||
}
|
||||
|
||||
if ((lr & XFS_BTCUR_RIGHTRA) && right != NULLAGBLOCK) {
|
||||
xfs_btree_reada_bufs(cur->bc_mp, cur->bc_ag.pag->pag_agno,
|
||||
right, 1, cur->bc_ops->buf_ops);
|
||||
xfs_buf_readahead(mp->m_ddev_targp,
|
||||
XFS_AGB_TO_DADDR(mp, agno, right),
|
||||
mp->m_bsize, cur->bc_ops->buf_ops);
|
||||
rval++;
|
||||
}
|
||||
|
||||
|
@ -391,18 +391,6 @@ xfs_btree_read_bufl(
|
||||
int refval, /* ref count value for buffer */
|
||||
const struct xfs_buf_ops *ops);
|
||||
|
||||
/*
|
||||
* Read-ahead the block, don't wait for it, don't return a buffer.
|
||||
* Short-form addressing.
|
||||
*/
|
||||
void /* error */
|
||||
xfs_btree_reada_bufs(
|
||||
struct xfs_mount *mp, /* file system mount point */
|
||||
xfs_agnumber_t agno, /* allocation group number */
|
||||
xfs_agblock_t agbno, /* allocation group block number */
|
||||
xfs_extlen_t count, /* count of filesystem blocks */
|
||||
const struct xfs_buf_ops *ops);
|
||||
|
||||
/*
|
||||
* Initialise a new btree block header
|
||||
*/
|
||||
|
@ -100,6 +100,7 @@ xfs_iwalk_ichunk_ra(
|
||||
struct xfs_inobt_rec_incore *irec)
|
||||
{
|
||||
struct xfs_ino_geometry *igeo = M_IGEO(mp);
|
||||
xfs_agnumber_t agno = pag->pag_agno;
|
||||
xfs_agblock_t agbno;
|
||||
struct blk_plug plug;
|
||||
int i; /* inode chunk index */
|
||||
@ -112,8 +113,9 @@ xfs_iwalk_ichunk_ra(
|
||||
|
||||
imask = xfs_inobt_maskn(i, igeo->inodes_per_cluster);
|
||||
if (imask & ~irec->ir_free) {
|
||||
xfs_btree_reada_bufs(mp, pag->pag_agno, agbno,
|
||||
igeo->blocks_per_cluster,
|
||||
xfs_buf_readahead(mp->m_ddev_targp,
|
||||
XFS_AGB_TO_DADDR(mp, agno, agbno),
|
||||
igeo->blocks_per_cluster * mp->m_bsize,
|
||||
&xfs_inode_buf_ops);
|
||||
}
|
||||
agbno += igeo->blocks_per_cluster;
|
||||
|
Loading…
Reference in New Issue
Block a user