In commit id
7ea004358b97c ("xfs: don't leave EFIs on AIL on mount
failure") I accidentally reverted
aa6a6227435cb06c ("xfs: toggle
readonly state around xfs_log_mount_finish"), which caused a regression
in generic/417. Put back the code that enables iunlink processing on a
ro mount.
Orabug:
27845869
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Jack Vogel <jack.vogel@oracle.com>
struct xfs_mount *mp)
{
int error = 0;
+ bool readonly = (mp->m_flags & XFS_MOUNT_RDONLY);
if (mp->m_flags & XFS_MOUNT_NORECOVERY) {
ASSERT(mp->m_flags & XFS_MOUNT_RDONLY);
return 0;
+ } else if (readonly) {
+ /* Allow unlinked processing to proceed */
+ mp->m_flags &= ~XFS_MOUNT_RDONLY;
}
error = xlog_recover_finish(mp->m_log);
if (!error)
xfs_log_work_queue(mp);
+ if (readonly)
+ mp->m_flags |= XFS_MOUNT_RDONLY;
+
return error;
}