diff options
Diffstat (limited to 'fs/xfs/libxfs/xfs_rtbitmap.c')
-rw-r--r-- | fs/xfs/libxfs/xfs_rtbitmap.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/fs/xfs/libxfs/xfs_rtbitmap.c b/fs/xfs/libxfs/xfs_rtbitmap.c index 106be2d0bb88..7712f282d172 100644 --- a/fs/xfs/libxfs/xfs_rtbitmap.c +++ b/fs/xfs/libxfs/xfs_rtbitmap.c | |||
@@ -90,6 +90,9 @@ xfs_rtbuf_get( | |||
90 | if (error) | 90 | if (error) |
91 | return error; | 91 | return error; |
92 | 92 | ||
93 | if (nmap == 0 || !xfs_bmap_is_real_extent(&map)) | ||
94 | return -EFSCORRUPTED; | ||
95 | |||
93 | ASSERT(map.br_startblock != NULLFSBLOCK); | 96 | ASSERT(map.br_startblock != NULLFSBLOCK); |
94 | error = xfs_trans_read_buf(mp, tp, mp->m_ddev_targp, | 97 | error = xfs_trans_read_buf(mp, tp, mp->m_ddev_targp, |
95 | XFS_FSB_TO_DADDR(mp, map.br_startblock), | 98 | XFS_FSB_TO_DADDR(mp, map.br_startblock), |