diff options
Diffstat (limited to 'fs/xfs/xfs_super.c')
| -rw-r--r-- | fs/xfs/xfs_super.c | 12 | 
1 files changed, 11 insertions, 1 deletions
| diff --git a/fs/xfs/xfs_super.c b/fs/xfs/xfs_super.c index c996f4ae4a5f..f663022353c0 100644 --- a/fs/xfs/xfs_super.c +++ b/fs/xfs/xfs_super.c @@ -1637,7 +1637,7 @@ xfs_fs_fill_super(  	/* version 5 superblocks support inode version counters. */  	if (XFS_SB_VERSION_NUM(&mp->m_sb) == XFS_SB_VERSION_5) -		sb->s_flags |= MS_I_VERSION; +		sb->s_flags |= SB_I_VERSION;  	if (mp->m_flags & XFS_MOUNT_DAX) {  		xfs_warn(mp, @@ -1654,6 +1654,16 @@ xfs_fs_fill_super(  		"DAX and reflink have not been tested together!");  	} +	if (mp->m_flags & XFS_MOUNT_DISCARD) { +		struct request_queue *q = bdev_get_queue(sb->s_bdev); + +		if (!blk_queue_discard(q)) { +			xfs_warn(mp, "mounting with \"discard\" option, but " +					"the device does not support discard"); +			mp->m_flags &= ~XFS_MOUNT_DISCARD; +		} +	} +  	if (xfs_sb_version_hasrmapbt(&mp->m_sb)) {  		if (mp->m_sb.sb_rblocks) {  			xfs_alert(mp, |