Changes since last update:
- Print scrub build status in the xfs build info. - Explicitly call out the remaining two scenarios where we don't support reflink and never have. - Remove EXPERIMENTAL tag from reverse mapping btree! -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQIcBAABCgAGBQJaeJjKAAoJEPh/dxk0SrTrZP8P/RT0bcKc1PkmonX6rZBYa9OB Mz5X7TpVRsXtZPtGSNM3IBIubjIVEZ/f3s5CZefN08uV8s+AFBjEAdHmeAiGtT/X qakQyvsBJ3mEyVsMyzuI7eu4TU3/5Xad7kSp9TFPnXfW8z09Z4GygyGVJPRqpKRQ liFzh8BIVgS/IFcpTL+6wKEHdAHEuyz6u/78ylgCtLMuiNiMY1mYv/+U2f7dEV3u yiRY4oHGQfOiw1aXy3EO2WUdSKcAQwIJIEsLOllYQRe3f5W2milflFCJF9RoEEuE OLmur4PBwFWpTfLVl1BqGa6rr/nhaY1y7Lyy3mVrmv0QiHlnNM/BQ5UKICZJdx5O 8Ai4ZyaJ5Q/nQxA6USOBHSlkeexMOH82i7gJCCfPtYqW1l0QjStLcoTYjWXa/0u9 ULEkdnocNm/HSCIGocFrd6dzOKR8TxJDVh3DxIFo8VjTj/XI57+ePfbZT7J+0vuB elhKcho87xKHeF1RQfsVdgh+518GGAXp5zZjAJ3P/6GpxuB9sa+ShEEtR7OzSf0K sfkXw3P/tH9ladBxWvMC6Gx0tSUSUTAUeYSbfOC1wRio7iI7sf8Gl8SkU65y4RdE ZhQp8M4i2+vt9JS/E/mbAVxKIn1iF7L9ZiWlycJXyuqFf7bv1uBXG+tTE7lM7nJA YjSmXBWN5j6kxQeUR0NE =U54J -----END PGP SIGNATURE----- Merge tag 'xfs-4.16-merge-5' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux Pull more xfs updates from Darrick Wong: "As promised, here's a (much smaller) second pull request for the second week of the merge cycle. This time around we have a couple patches shutting off unsupported fs configurations, and a couple of cleanups. Last, we turn off EXPERIMENTAL for the reverse mapping btree, since the primary downstream user of that information (online fsck) is now upstream and I haven't seen any major failures in a few kernel releases. Summary: - Print scrub build status in the xfs build info. - Explicitly call out the remaining two scenarios where we don't support reflink and never have. - Remove EXPERIMENTAL tag from reverse mapping btree!" * tag 'xfs-4.16-merge-5' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux: xfs: remove experimental tag for reverse mapping xfs: don't allow reflink + realtime filesystems xfs: don't allow DAX on reflink filesystems xfs: add scrub to XFS_BUILD_OPTIONS xfs: fix u32 type usage in sb validation function
This commit is contained in:
commit
e237f98a9c
|
@ -118,8 +118,8 @@ xfs_mount_validate_sb(
|
|||
bool check_inprogress,
|
||||
bool check_version)
|
||||
{
|
||||
u32 agcount = 0;
|
||||
u32 rem;
|
||||
uint32_t agcount = 0;
|
||||
uint32_t rem;
|
||||
|
||||
if (sbp->sb_magicnum != XFS_SB_MAGIC) {
|
||||
xfs_warn(mp, "bad magic number");
|
||||
|
|
|
@ -1666,9 +1666,12 @@ xfs_fs_fill_super(
|
|||
"DAX unsupported by block device. Turning off DAX.");
|
||||
mp->m_flags &= ~XFS_MOUNT_DAX;
|
||||
}
|
||||
if (xfs_sb_version_hasreflink(&mp->m_sb))
|
||||
if (xfs_sb_version_hasreflink(&mp->m_sb)) {
|
||||
xfs_alert(mp,
|
||||
"DAX and reflink cannot be used together!");
|
||||
error = -EINVAL;
|
||||
goto out_filestream_unmount;
|
||||
}
|
||||
}
|
||||
|
||||
if (mp->m_flags & XFS_MOUNT_DISCARD) {
|
||||
|
@ -1681,15 +1684,18 @@ xfs_fs_fill_super(
|
|||
}
|
||||
}
|
||||
|
||||
if (xfs_sb_version_hasrmapbt(&mp->m_sb)) {
|
||||
if (mp->m_sb.sb_rblocks) {
|
||||
xfs_alert(mp,
|
||||
"EXPERIMENTAL reverse mapping btree not compatible with realtime device!");
|
||||
error = -EINVAL;
|
||||
goto out_filestream_unmount;
|
||||
}
|
||||
if (xfs_sb_version_hasreflink(&mp->m_sb) && mp->m_sb.sb_rblocks) {
|
||||
xfs_alert(mp,
|
||||
"EXPERIMENTAL reverse mapping btree feature enabled. Use at your own risk!");
|
||||
"reflink not compatible with realtime device!");
|
||||
error = -EINVAL;
|
||||
goto out_filestream_unmount;
|
||||
}
|
||||
|
||||
if (xfs_sb_version_hasrmapbt(&mp->m_sb) && mp->m_sb.sb_rblocks) {
|
||||
xfs_alert(mp,
|
||||
"reverse mapping btree not compatible with realtime device!");
|
||||
error = -EINVAL;
|
||||
goto out_filestream_unmount;
|
||||
}
|
||||
|
||||
error = xfs_mountfs(mp);
|
||||
|
|
|
@ -44,6 +44,12 @@ extern void xfs_qm_exit(void);
|
|||
# define XFS_REALTIME_STRING
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_XFS_ONLINE_SCRUB
|
||||
# define XFS_SCRUB_STRING "scrub, "
|
||||
#else
|
||||
# define XFS_SCRUB_STRING
|
||||
#endif
|
||||
|
||||
#ifdef DEBUG
|
||||
# define XFS_DBG_STRING "debug"
|
||||
#else
|
||||
|
@ -54,6 +60,7 @@ extern void xfs_qm_exit(void);
|
|||
#define XFS_BUILD_OPTIONS XFS_ACL_STRING \
|
||||
XFS_SECURITY_STRING \
|
||||
XFS_REALTIME_STRING \
|
||||
XFS_SCRUB_STRING \
|
||||
XFS_DBG_STRING /* DBG must be last */
|
||||
|
||||
struct xfs_inode;
|
||||
|
|
Loading…
Reference in New Issue