Now that unlinked inode recovery is done outside of log recovery, there is no need to dirty the log on snapshots just to handle unlinked inodes. This means that readonly snapshots can be mounted without requiring -o ro,norecovery to avoid the log replay that can't happen on a readonly block device. (unlinked inodes will just hang out in the agi buckets until the next writable mount) Signed-off-by: Eric Sandeen <sandeen@xxxxxxxxxx> --- diff --git a/fs/xfs/xfs_super.c b/fs/xfs/xfs_super.c index 93588ea..5669525 100644 --- a/fs/xfs/xfs_super.c +++ b/fs/xfs/xfs_super.c @@ -1419,9 +1419,10 @@ struct proc_xfs_info { /* * Second stage of a freeze. The data is already frozen so we only - * need to take care of the metadata. Once that's done sync the superblock - * to the log to dirty it in case of a crash while frozen. This ensures that we - * will recover the unlinked inode lists on the next mount. + * need to take care of the metadata. + * Any unlinked inode lists will remain at this point, and be recovered + * on the next writable mount if we crash while frozen, or create + * a snapshot from the frozen filesystem. */ STATIC int xfs_fs_freeze( @@ -1431,7 +1432,7 @@ struct proc_xfs_info { xfs_save_resvblks(mp); xfs_quiesce_attr(mp); - return xfs_sync_sb(mp, true); + return 0; } STATIC int -- To unsubscribe from this list: send the line "unsubscribe linux-xfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html