Received: by 2002:a25:868d:0:0:0:0:0 with SMTP id z13csp1666831ybk; Thu, 21 May 2020 12:14:34 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwmbwOR9IUUM4HyX92A/ESZ4oYoHq8WqvTRT3DTSCWF812YL60xlQrbtaOgDlpRv8jNB29k X-Received: by 2002:a05:6402:1a21:: with SMTP id be1mr150205edb.211.1590088474503; Thu, 21 May 2020 12:14:34 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1590088474; cv=none; d=google.com; s=arc-20160816; b=x+QSMvW6gvS/ORR+c2CYs8fa6YonHLsyj/q+L027p/bVXTSghSEIePDtY89syVLwjr 3SDLF5wdnGpahXPzZBkJtjt/FSoyUVuQQgHHVzHfq8dkrsQjxG05QACGIA1aQl/WFdvy PQae7aalYdfDaW6wbIhSZmtF2O/PQe6NXgr360TJ2PdxGebwRHzQuPao+Z4qd9JTgYUf 6EtY1LsV6UeantxwASeXrlfnyjA4ntFhR38eYkWsT3a4jVaUfl7g9ySo16/yI7a2x0QM oJpdfwzQUHpGexV/X8SSkUHNVfmM5HCCusps8Ri9lkE4vwg2yAJZ0cv/og7CeeReDKQo r8WQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :ironport-sdr:ironport-sdr; bh=OVYzyN+HcpsGxCC+1o3M4gwhYEf8EZswatrzAvUeC5Y=; b=ZGdIf72aXsPCOYSdCrrAK8gkjW3aFEgmqU1hAGiLey5YNZBLUHleN0ryvFq+9gNSP7 89jB7DWv1UZHsP1TfxgoMMikaLj83MGJbo8VQxycNYMtIeQxsdXagWlyRquwM9IHWCgq am6jbjA2/rHdTXKzDBi2s//numSKkl5remFgr3Da1BbqVimf4VIcCvrFdl/rvd4V6HzJ rjPk3+3NOJfFjk+2WnidEEYyLnzPrgAL11pi5H708B+WcVNFdpK3dJSvLqmfSHQ9HFkY cf8ffCq5R2cNo/FflnTaLOq9UpUxaAePI4rt7UQs3VqfN0Zxanem2Iz+jzi2XoRm6A65 8X+g== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-ext4-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-ext4-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id cx8si3386276edb.196.2020.05.21.12.14.11; Thu, 21 May 2020 12:14:34 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-ext4-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-ext4-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-ext4-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730356AbgEUTNp (ORCPT + 99 others); Thu, 21 May 2020 15:13:45 -0400 Received: from mga02.intel.com ([134.134.136.20]:56298 "EHLO mga02.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729593AbgEUTNT (ORCPT ); Thu, 21 May 2020 15:13:19 -0400 IronPort-SDR: lpzrANOYar2k3X+CnCz8nXg4DDcc4Toro2+J8ZqkQDIeWpX+CaMOsZfjOQ30RLyeAPHk8RbNe9 uNLSLmNwuUvg== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga006.jf.intel.com ([10.7.209.51]) by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 21 May 2020 12:13:18 -0700 IronPort-SDR: entT0duTtVBPwSsT36LrVR97T+eaBIttglSC1N6Vxjk7pz5mrAOo1DxYTZzLXseBgMRI8AXgcd hn85QnpDjZQQ== X-IronPort-AV: E=Sophos;i="5.73,418,1583222400"; d="scan'208";a="268747888" Received: from iweiny-desk2.sc.intel.com (HELO localhost) ([10.3.52.147]) by orsmga006-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 21 May 2020 12:13:18 -0700 From: ira.weiny@intel.com To: linux-ext4@vger.kernel.org, Andreas Dilger , "Theodore Y. Ts'o" , Jan Kara , Eric Biggers Cc: Ira Weiny , Al Viro , Dan Williams , Dave Chinner , Christoph Hellwig , Jeff Moyer , "Darrick J. Wong" , linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH V4 3/8] fs/ext4: Change EXT4_MOUNT_DAX to EXT4_MOUNT_DAX_ALWAYS Date: Thu, 21 May 2020 12:13:08 -0700 Message-Id: <20200521191313.261929-4-ira.weiny@intel.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20200521191313.261929-1-ira.weiny@intel.com> References: <20200521191313.261929-1-ira.weiny@intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: linux-ext4-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-ext4@vger.kernel.org From: Ira Weiny In prep for the new tri-state mount option which then introduces EXT4_MOUNT_DAX_NEVER. Reviewed-by: Jan Kara Signed-off-by: Ira Weiny --- Changes: New patch --- fs/ext4/ext4.h | 4 ++-- fs/ext4/inode.c | 2 +- fs/ext4/super.c | 12 ++++++------ 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/fs/ext4/ext4.h b/fs/ext4/ext4.h index 91eb4381cae5..1a3daf2d18ef 100644 --- a/fs/ext4/ext4.h +++ b/fs/ext4/ext4.h @@ -1123,9 +1123,9 @@ struct ext4_inode_info { #define EXT4_MOUNT_MINIX_DF 0x00080 /* Mimics the Minix statfs */ #define EXT4_MOUNT_NOLOAD 0x00100 /* Don't use existing journal*/ #ifdef CONFIG_FS_DAX -#define EXT4_MOUNT_DAX 0x00200 /* Direct Access */ +#define EXT4_MOUNT_DAX_ALWAYS 0x00200 /* Direct Access */ #else -#define EXT4_MOUNT_DAX 0 +#define EXT4_MOUNT_DAX_ALWAYS 0 #endif #define EXT4_MOUNT_DATA_FLAGS 0x00C00 /* Mode for data writes: */ #define EXT4_MOUNT_JOURNAL_DATA 0x00400 /* Write data to journal */ diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c index 2a4aae6acdcb..a10ff12194db 100644 --- a/fs/ext4/inode.c +++ b/fs/ext4/inode.c @@ -4400,7 +4400,7 @@ int ext4_get_inode_loc(struct inode *inode, struct ext4_iloc *iloc) static bool ext4_should_use_dax(struct inode *inode) { - if (!test_opt(inode->i_sb, DAX)) + if (!test_opt(inode->i_sb, DAX_ALWAYS)) return false; if (!S_ISREG(inode->i_mode)) return false; diff --git a/fs/ext4/super.c b/fs/ext4/super.c index bf5fcb477f66..7b99c44d0a91 100644 --- a/fs/ext4/super.c +++ b/fs/ext4/super.c @@ -1775,7 +1775,7 @@ static const struct mount_opts { {Opt_min_batch_time, 0, MOPT_GTE0}, {Opt_inode_readahead_blks, 0, MOPT_GTE0}, {Opt_init_itable, 0, MOPT_GTE0}, - {Opt_dax, EXT4_MOUNT_DAX, MOPT_SET}, + {Opt_dax, EXT4_MOUNT_DAX_ALWAYS, MOPT_SET}, {Opt_stripe, 0, MOPT_GTE0}, {Opt_resuid, 0, MOPT_GTE0}, {Opt_resgid, 0, MOPT_GTE0}, @@ -3982,7 +3982,7 @@ static int ext4_fill_super(struct super_block *sb, void *data, int silent) "both data=journal and dioread_nolock"); goto failed_mount; } - if (test_opt(sb, DAX)) { + if (test_opt(sb, DAX_ALWAYS)) { ext4_msg(sb, KERN_ERR, "can't mount with " "both data=journal and dax"); goto failed_mount; @@ -4092,7 +4092,7 @@ static int ext4_fill_super(struct super_block *sb, void *data, int silent) goto failed_mount; } - if (sbi->s_mount_opt & EXT4_MOUNT_DAX) { + if (sbi->s_mount_opt & EXT4_MOUNT_DAX_ALWAYS) { if (ext4_has_feature_inline_data(sb)) { ext4_msg(sb, KERN_ERR, "Cannot use DAX on a filesystem" " that may contain inline data"); @@ -5412,7 +5412,7 @@ static int ext4_remount(struct super_block *sb, int *flags, char *data) err = -EINVAL; goto restore_opts; } - if (test_opt(sb, DAX)) { + if (test_opt(sb, DAX_ALWAYS)) { ext4_msg(sb, KERN_ERR, "can't mount with " "both data=journal and dax"); err = -EINVAL; @@ -5433,10 +5433,10 @@ static int ext4_remount(struct super_block *sb, int *flags, char *data) goto restore_opts; } - if ((sbi->s_mount_opt ^ old_opts.s_mount_opt) & EXT4_MOUNT_DAX) { + if ((sbi->s_mount_opt ^ old_opts.s_mount_opt) & EXT4_MOUNT_DAX_ALWAYS) { ext4_msg(sb, KERN_WARNING, "warning: refusing change of " "dax flag with busy inodes while remounting"); - sbi->s_mount_opt ^= EXT4_MOUNT_DAX; + sbi->s_mount_opt ^= EXT4_MOUNT_DAX_ALWAYS; } if (sbi->s_mount_flags & EXT4_MF_FS_ABORTED) -- 2.25.1