Message ID | 20181214042932.GF24487@magnolia (mailing list archive) |
---|---|
State | Accepted |
Headers | show |
Series | xfs: require both realtime inodes to mount | expand |
On Thu, Dec 13, 2018 at 08:29:32PM -0800, Darrick J. Wong wrote: > From: Darrick J. Wong <darrick.wong@oracle.com> > > Since mkfs always formats the filesystem with the realtime bitmap and > summary inodes immediately after the root directory, we should expect > that both of them are present and loadable, even if there isn't a > realtime volume attached. There's no reason to skip this if rbmino == > NULLFSINO; in fact, this causes an immediate crash if the there /is/ a > realtime volume and someone writes to it. > > Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com> > --- Looks fine. Reviewed-by: Bill O'Donnell <billodo@redhat.com> > fs/xfs/xfs_rtalloc.c | 4 +--- > 1 file changed, 1 insertion(+), 3 deletions(-) > > diff --git a/fs/xfs/xfs_rtalloc.c b/fs/xfs/xfs_rtalloc.c > index aefd63d46397..afe4d29f7ab4 100644 > --- a/fs/xfs/xfs_rtalloc.c > +++ b/fs/xfs/xfs_rtalloc.c > @@ -1206,13 +1206,11 @@ xfs_rtmount_inodes( > xfs_sb_t *sbp; > > sbp = &mp->m_sb; > - if (sbp->sb_rbmino == NULLFSINO) > - return 0; > error = xfs_iget(mp, NULL, sbp->sb_rbmino, 0, 0, &mp->m_rbmip); > if (error) > return error; > ASSERT(mp->m_rbmip != NULL); > - ASSERT(sbp->sb_rsumino != NULLFSINO); > + > error = xfs_iget(mp, NULL, sbp->sb_rsumino, 0, 0, &mp->m_rsumip); > if (error) { > xfs_irele(mp->m_rbmip);
diff --git a/fs/xfs/xfs_rtalloc.c b/fs/xfs/xfs_rtalloc.c index aefd63d46397..afe4d29f7ab4 100644 --- a/fs/xfs/xfs_rtalloc.c +++ b/fs/xfs/xfs_rtalloc.c @@ -1206,13 +1206,11 @@ xfs_rtmount_inodes( xfs_sb_t *sbp; sbp = &mp->m_sb; - if (sbp->sb_rbmino == NULLFSINO) - return 0; error = xfs_iget(mp, NULL, sbp->sb_rbmino, 0, 0, &mp->m_rbmip); if (error) return error; ASSERT(mp->m_rbmip != NULL); - ASSERT(sbp->sb_rsumino != NULLFSINO); + error = xfs_iget(mp, NULL, sbp->sb_rsumino, 0, 0, &mp->m_rsumip); if (error) { xfs_irele(mp->m_rbmip);