Message ID | 20200902174248.GU6096@magnolia (mailing list archive) |
---|---|
State | Accepted |
Headers | show |
Series | [v2] xfs: fix xfs_bmap_validate_extent_raw when checking attr fork of rt files | expand |
On 9/2/20 12:42 PM, Darrick J. Wong wrote: > From: Darrick J. Wong <darrick.wong@oracle.com> > > The realtime flag only applies to the data fork, so don't use the > realtime block number checks on the attr fork of a realtime file. > > Fixes: 30b0984d9117 ("xfs: refactor bmap record validation") > Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com> Seems legit Reviewed-by: Eric Sandeen <sandeen@redhat.com> > --- > v2: send from stable tree, not dev tree > --- > fs/xfs/libxfs/xfs_bmap.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/fs/xfs/libxfs/xfs_bmap.c b/fs/xfs/libxfs/xfs_bmap.c > index 9c40d5971035..1b0a01b06a05 100644 > --- a/fs/xfs/libxfs/xfs_bmap.c > +++ b/fs/xfs/libxfs/xfs_bmap.c > @@ -6226,7 +6226,7 @@ xfs_bmap_validate_extent( > > isrt = XFS_IS_REALTIME_INODE(ip); > endfsb = irec->br_startblock + irec->br_blockcount - 1; > - if (isrt) { > + if (isrt && whichfork == XFS_DATA_FORK) { > if (!xfs_verify_rtbno(mp, irec->br_startblock)) > return __this_address; > if (!xfs_verify_rtbno(mp, endfsb)) >
diff --git a/fs/xfs/libxfs/xfs_bmap.c b/fs/xfs/libxfs/xfs_bmap.c index 9c40d5971035..1b0a01b06a05 100644 --- a/fs/xfs/libxfs/xfs_bmap.c +++ b/fs/xfs/libxfs/xfs_bmap.c @@ -6226,7 +6226,7 @@ xfs_bmap_validate_extent( isrt = XFS_IS_REALTIME_INODE(ip); endfsb = irec->br_startblock + irec->br_blockcount - 1; - if (isrt) { + if (isrt && whichfork == XFS_DATA_FORK) { if (!xfs_verify_rtbno(mp, irec->br_startblock)) return __this_address; if (!xfs_verify_rtbno(mp, endfsb))