On Wed, Dec 12, 2018 at 05:24:36PM -0800, Darrick J. Wong wrote: > From: Darrick J. Wong <darrick.wong@xxxxxxxxxx> > > Don't ever skip the realtime bitmap / summary inode initialization if > there's a realtime device attached, because we'd rather fail the mount > if iget declines to retrieve a NULL inode pointer. Right now, if > someone sets rbmino to NULLFSINO on a rt-capable filesystem, mounts it, > and writes a file to the rt device, we'll blow up. > > Signed-off-by: Darrick J. Wong <darrick.wong@xxxxxxxxxx> > --- Makes sense. Reviewed-by: Bill O'Donnell <billodo@xxxxxxxxxx> > fs/xfs/xfs_rtalloc.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/fs/xfs/xfs_rtalloc.c b/fs/xfs/xfs_rtalloc.c > index aefd63d46397..18ad31ded0bf 100644 > --- a/fs/xfs/xfs_rtalloc.c > +++ b/fs/xfs/xfs_rtalloc.c > @@ -1206,7 +1206,8 @@ xfs_rtmount_inodes( > xfs_sb_t *sbp; > > sbp = &mp->m_sb; > - if (sbp->sb_rbmino == NULLFSINO) > + if (!xfs_sb_version_hasrealtime(&mp->m_sb) && > + sbp->sb_rbmino == NULLFSINO) > return 0; > error = xfs_iget(mp, NULL, sbp->sb_rbmino, 0, 0, &mp->m_rbmip); > if (error)