提交 c867cb61 编写于 作者: C Christoph Hellwig 提交者: Alex Elder

xfs: remove XFS_BUF_STALE and XFS_BUF_SUPER_STALE

Signed-off-by: NChristoph Hellwig <hch@lst.de>
Reviewed-by: NDave Chinner <dchinner@redhat.com>
Signed-off-by: NAlex Elder <aelder@sgi.com>
上级 38f23232
...@@ -2168,7 +2168,7 @@ xfs_attr_rmtval_remove(xfs_da_args_t *args) ...@@ -2168,7 +2168,7 @@ xfs_attr_rmtval_remove(xfs_da_args_t *args)
*/ */
bp = xfs_incore(mp->m_ddev_targp, dblkno, blkcnt, XBF_TRYLOCK); bp = xfs_incore(mp->m_ddev_targp, dblkno, blkcnt, XBF_TRYLOCK);
if (bp) { if (bp) {
XFS_BUF_STALE(bp); xfs_buf_stale(bp);
xfs_buf_delwri_dequeue(bp); xfs_buf_delwri_dequeue(bp);
xfs_buf_relse(bp); xfs_buf_relse(bp);
bp = NULL; bp = NULL;
......
...@@ -1061,7 +1061,7 @@ xfs_bioerror( ...@@ -1061,7 +1061,7 @@ xfs_bioerror(
XFS_BUF_UNREAD(bp); XFS_BUF_UNREAD(bp);
xfs_buf_delwri_dequeue(bp); xfs_buf_delwri_dequeue(bp);
XFS_BUF_UNDONE(bp); XFS_BUF_UNDONE(bp);
XFS_BUF_STALE(bp); xfs_buf_stale(bp);
xfs_buf_ioend(bp, 0); xfs_buf_ioend(bp, 0);
...@@ -1090,7 +1090,7 @@ xfs_bioerror_relse( ...@@ -1090,7 +1090,7 @@ xfs_bioerror_relse(
XFS_BUF_UNREAD(bp); XFS_BUF_UNREAD(bp);
xfs_buf_delwri_dequeue(bp); xfs_buf_delwri_dequeue(bp);
XFS_BUF_DONE(bp); XFS_BUF_DONE(bp);
XFS_BUF_STALE(bp); xfs_buf_stale(bp);
bp->b_iodone = NULL; bp->b_iodone = NULL;
if (!(fl & XBF_ASYNC)) { if (!(fl & XBF_ASYNC)) {
/* /*
......
...@@ -242,14 +242,8 @@ xfs_buf_target_name(struct xfs_buftarg *target) ...@@ -242,14 +242,8 @@ xfs_buf_target_name(struct xfs_buftarg *target)
XBF_SYNCIO|XBF_FUA|XBF_FLUSH)) XBF_SYNCIO|XBF_FUA|XBF_FLUSH))
void xfs_buf_stale(struct xfs_buf *bp); void xfs_buf_stale(struct xfs_buf *bp);
#define XFS_BUF_STALE(bp) xfs_buf_stale(bp);
#define XFS_BUF_UNSTALE(bp) ((bp)->b_flags &= ~XBF_STALE) #define XFS_BUF_UNSTALE(bp) ((bp)->b_flags &= ~XBF_STALE)
#define XFS_BUF_ISSTALE(bp) ((bp)->b_flags & XBF_STALE) #define XFS_BUF_ISSTALE(bp) ((bp)->b_flags & XBF_STALE)
#define XFS_BUF_SUPER_STALE(bp) do { \
XFS_BUF_STALE(bp); \
xfs_buf_delwri_dequeue(bp); \
XFS_BUF_DONE(bp); \
} while (0)
#define XFS_BUF_ISDELAYWRITE(bp) ((bp)->b_flags & XBF_DELWRI) #define XFS_BUF_ISDELAYWRITE(bp) ((bp)->b_flags & XBF_DELWRI)
......
...@@ -966,7 +966,9 @@ xfs_buf_iodone_callbacks( ...@@ -966,7 +966,9 @@ xfs_buf_iodone_callbacks(
* I/O errors, there's no point in giving this a retry. * I/O errors, there's no point in giving this a retry.
*/ */
if (XFS_FORCED_SHUTDOWN(mp)) { if (XFS_FORCED_SHUTDOWN(mp)) {
XFS_BUF_SUPER_STALE(bp); xfs_buf_stale(bp);
xfs_buf_delwri_dequeue(bp);
XFS_BUF_DONE(bp);
trace_xfs_buf_item_iodone(bp, _RET_IP_); trace_xfs_buf_item_iodone(bp, _RET_IP_);
goto do_callbacks; goto do_callbacks;
} }
...@@ -1005,7 +1007,7 @@ xfs_buf_iodone_callbacks( ...@@ -1005,7 +1007,7 @@ xfs_buf_iodone_callbacks(
* If the write of the buffer was synchronous, we want to make * If the write of the buffer was synchronous, we want to make
* sure to return the error to the caller of xfs_bwrite(). * sure to return the error to the caller of xfs_bwrite().
*/ */
XFS_BUF_STALE(bp); xfs_buf_stale(bp);
XFS_BUF_DONE(bp); XFS_BUF_DONE(bp);
xfs_buf_delwri_dequeue(bp); xfs_buf_delwri_dequeue(bp);
......
...@@ -2469,11 +2469,11 @@ xfs_iflush_cluster( ...@@ -2469,11 +2469,11 @@ xfs_iflush_cluster(
*/ */
if (bp->b_iodone) { if (bp->b_iodone) {
XFS_BUF_UNDONE(bp); XFS_BUF_UNDONE(bp);
XFS_BUF_STALE(bp); xfs_buf_stale(bp);
xfs_buf_ioerror(bp, EIO); xfs_buf_ioerror(bp, EIO);
xfs_buf_ioend(bp, 0); xfs_buf_ioend(bp, 0);
} else { } else {
XFS_BUF_STALE(bp); xfs_buf_stale(bp);
xfs_buf_relse(bp); xfs_buf_relse(bp);
} }
} }
......
...@@ -881,7 +881,7 @@ xlog_iodone(xfs_buf_t *bp) ...@@ -881,7 +881,7 @@ xlog_iodone(xfs_buf_t *bp)
if (XFS_TEST_ERROR((xfs_buf_geterror(bp)), l->l_mp, if (XFS_TEST_ERROR((xfs_buf_geterror(bp)), l->l_mp,
XFS_ERRTAG_IODONE_IOERR, XFS_RANDOM_IODONE_IOERR)) { XFS_ERRTAG_IODONE_IOERR, XFS_RANDOM_IODONE_IOERR)) {
xfs_ioerror_alert("xlog_iodone", l->l_mp, bp, XFS_BUF_ADDR(bp)); xfs_ioerror_alert("xlog_iodone", l->l_mp, bp, XFS_BUF_ADDR(bp));
XFS_BUF_STALE(bp); xfs_buf_stale(bp);
xfs_force_shutdown(l->l_mp, SHUTDOWN_LOG_IO_ERROR); xfs_force_shutdown(l->l_mp, SHUTDOWN_LOG_IO_ERROR);
/* /*
* This flag will be propagated to the trans-committed * This flag will be propagated to the trans-committed
...@@ -1247,7 +1247,7 @@ xlog_bdstrat( ...@@ -1247,7 +1247,7 @@ xlog_bdstrat(
if (iclog->ic_state & XLOG_STATE_IOERROR) { if (iclog->ic_state & XLOG_STATE_IOERROR) {
xfs_buf_ioerror(bp, EIO); xfs_buf_ioerror(bp, EIO);
XFS_BUF_STALE(bp); xfs_buf_stale(bp);
xfs_buf_ioend(bp, 0); xfs_buf_ioend(bp, 0);
/* /*
* It would seem logical to return EIO here, but we rely on * It would seem logical to return EIO here, but we rely on
......
...@@ -2174,7 +2174,7 @@ xlog_recover_buffer_pass2( ...@@ -2174,7 +2174,7 @@ xlog_recover_buffer_pass2(
be16_to_cpu(*((__be16 *)xfs_buf_offset(bp, 0))) && be16_to_cpu(*((__be16 *)xfs_buf_offset(bp, 0))) &&
(XFS_BUF_COUNT(bp) != MAX(log->l_mp->m_sb.sb_blocksize, (XFS_BUF_COUNT(bp) != MAX(log->l_mp->m_sb.sb_blocksize,
(__uint32_t)XFS_INODE_CLUSTER_SIZE(log->l_mp)))) { (__uint32_t)XFS_INODE_CLUSTER_SIZE(log->l_mp)))) {
XFS_BUF_STALE(bp); xfs_buf_stale(bp);
error = xfs_bwrite(bp); error = xfs_bwrite(bp);
} else { } else {
ASSERT(bp->b_target->bt_mount == mp); ASSERT(bp->b_target->bt_mount == mp);
......
...@@ -150,7 +150,7 @@ xfs_read_buf( ...@@ -150,7 +150,7 @@ xfs_read_buf(
if (bp) { if (bp) {
XFS_BUF_UNDONE(bp); XFS_BUF_UNDONE(bp);
xfs_buf_delwri_dequeue(bp); xfs_buf_delwri_dequeue(bp);
XFS_BUF_STALE(bp); xfs_buf_stale(bp);
/* /*
* brelse clears B_ERROR and b_error * brelse clears B_ERROR and b_error
*/ */
......
...@@ -160,8 +160,11 @@ xfs_trans_get_buf(xfs_trans_t *tp, ...@@ -160,8 +160,11 @@ xfs_trans_get_buf(xfs_trans_t *tp,
bp = xfs_trans_buf_item_match(tp, target_dev, blkno, len); bp = xfs_trans_buf_item_match(tp, target_dev, blkno, len);
if (bp != NULL) { if (bp != NULL) {
ASSERT(xfs_buf_islocked(bp)); ASSERT(xfs_buf_islocked(bp));
if (XFS_FORCED_SHUTDOWN(tp->t_mountp)) if (XFS_FORCED_SHUTDOWN(tp->t_mountp)) {
XFS_BUF_SUPER_STALE(bp); xfs_buf_stale(bp);
xfs_buf_delwri_dequeue(bp);
XFS_BUF_DONE(bp);
}
/* /*
* If the buffer is stale then it was binval'ed * If the buffer is stale then it was binval'ed
...@@ -387,7 +390,9 @@ xfs_trans_read_buf( ...@@ -387,7 +390,9 @@ xfs_trans_read_buf(
} }
if (bp->b_error) { if (bp->b_error) {
error = bp->b_error; error = bp->b_error;
XFS_BUF_SUPER_STALE(bp); xfs_buf_stale(bp);
xfs_buf_delwri_dequeue(bp);
XFS_BUF_DONE(bp);
xfs_ioerror_alert("xfs_trans_read_buf", mp, xfs_ioerror_alert("xfs_trans_read_buf", mp,
bp, blkno); bp, blkno);
if (tp->t_flags & XFS_TRANS_DIRTY) if (tp->t_flags & XFS_TRANS_DIRTY)
...@@ -740,7 +745,7 @@ xfs_trans_binval( ...@@ -740,7 +745,7 @@ xfs_trans_binval(
* rid of it. * rid of it.
*/ */
xfs_buf_delwri_dequeue(bp); xfs_buf_delwri_dequeue(bp);
XFS_BUF_STALE(bp); xfs_buf_stale(bp);
bip->bli_flags |= XFS_BLI_STALE; bip->bli_flags |= XFS_BLI_STALE;
bip->bli_flags &= ~(XFS_BLI_INODE_BUF | XFS_BLI_LOGGED | XFS_BLI_DIRTY); bip->bli_flags &= ~(XFS_BLI_INODE_BUF | XFS_BLI_LOGGED | XFS_BLI_DIRTY);
bip->bli_format.blf_flags &= ~XFS_BLF_INODE_BUF; bip->bli_format.blf_flags &= ~XFS_BLF_INODE_BUF;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册