On Tue, Mar 29, 2016 at 02:28:28PM -0500, Eric Sandeen wrote: > Today, a kernel which refuses to mount a filesystem read-write > due to unknown ro-compat features can still transition to read-write > via the remount path. The old kernel is most likely none the wiser, > because it's unaware of the new feature, and isn't using it. However, > writing to the filesystem may well corrupt metadata related to that > new feature, and moving to a newer kernel which understand the feature > will have problems. > > Right now the only ro-compat feature we have is the free inode btree, > which showed up in v3.16. It would be good to push this back to > all the active stable kernels, I think, so that if anyone is using > newer mkfs (which enables the finobt feature) with older kernel > releases, they'll be protected. > > Signed-off-by: Eric Sandeen <sandeen@xxxxxxxxxx> > Cc: stable@xxxxxxxxxxxxxxx > --- Reviewed-by: Bill O'Donnell <billodo@xxxxxxxxxx> > > diff --git a/fs/xfs/xfs_super.c b/fs/xfs/xfs_super.c > index d760934..ca058a1 100644 > --- a/fs/xfs/xfs_super.c > +++ b/fs/xfs/xfs_super.c > @@ -1276,6 +1276,16 @@ xfs_fs_remount( > return -EINVAL; > } > > + if (XFS_SB_VERSION_NUM(sbp) == XFS_SB_VERSION_5 && > + xfs_sb_has_ro_compat_feature(sbp, > + XFS_SB_FEAT_RO_COMPAT_UNKNOWN)) { > + xfs_warn(mp, > +"ro->rw transition prohibited on unknown (0x%x) ro-compat filesystem", > + (sbp->sb_features_ro_compat & > + XFS_SB_FEAT_RO_COMPAT_UNKNOWN)); > + return -EINVAL; > + } > + > mp->m_flags &= ~XFS_MOUNT_RDONLY; > > /* > > _______________________________________________ > xfs mailing list > xfs@xxxxxxxxxxx > http://oss.sgi.com/mailman/listinfo/xfs _______________________________________________ xfs mailing list xfs@xxxxxxxxxxx http://oss.sgi.com/mailman/listinfo/xfs