On Tue, Aug 27, 2019 at 02:17:36PM -0500, Eric Sandeen wrote: > xfs_trans_log_buf() takes a final argument of the last byte to > log in the buffer; b_length is in basic blocks, so this isn't > the correct last byte. Fix it. > > Signed-off-by: Eric Sandeen <sandeen@xxxxxxxxxx> Looks ok, Reviewed-by: Darrick J. Wong <darrick.wong@xxxxxxxxxx> --D > --- > > just found by inspection/pattern matching, not tested TBH... > > diff --git a/fs/xfs/scrub/repair.c b/fs/xfs/scrub/repair.c > index 4cfeec57fb05..7bcc755beb40 100644 > --- a/fs/xfs/scrub/repair.c > +++ b/fs/xfs/scrub/repair.c > @@ -351,7 +351,7 @@ xrep_init_btblock( > xfs_buf_zero(bp, 0, BBTOB(bp->b_length)); > xfs_btree_init_block(mp, bp, btnum, 0, 0, sc->sa.agno); > xfs_trans_buf_set_type(tp, bp, XFS_BLFT_BTREE_BUF); > - xfs_trans_log_buf(tp, bp, 0, bp->b_length); > + xfs_trans_log_buf(tp, bp, 0, BBTOB(bp->b_length) - 1); > bp->b_ops = ops; > *bpp = bp; > >