Received: by 2002:a25:1985:0:0:0:0:0 with SMTP id 127csp168564ybz; Wed, 15 Apr 2020 06:34:56 -0700 (PDT) X-Google-Smtp-Source: APiQypKHBu3FAEztRExDRtNfPr2gsI/b2ojYo6aLhF8NZ2ScXqrw80B4KX7s+l2j3swpVVcGdLH9 X-Received: by 2002:a17:907:2170:: with SMTP id rl16mr5197104ejb.238.1586957695958; Wed, 15 Apr 2020 06:34:55 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1586957695; cv=none; d=google.com; s=arc-20160816; b=MEIqVjoEQtRAtqDWNdpBVo6wd3C2DL7CjiDZ3n15onordQPUTg02si3qRR88yzgTYG 8MVOvWuw+aXmwJ0YaEpkRTFLm/1UTMWgSALekqMfEpstSotYT78M/Oh4G91g7KtkiuMU iHbflvDDS4ORc7/BF6jA35zEhua0MVQ9/k6g4bYTtORmQiuv3hwkkZTmLwS5vMoo4iSR mmd02RmHGq0Am0oMYMRtfYPW+OwPjKLaYGTMp6n2qWP818kC7JsMZW9RjkWeyhZcErc4 CfSxlg1q8aqwMeuNR0bFfHQSfz1D80wemAPfTLCSUls5mORKJioDa2eSuAab/QjOrxPi zYUw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:ironport-sdr:ironport-sdr; bh=pQjC0vofUXvjAB7wVNXpZql5XkGRPwvfiUt/Rv4zP6E=; b=XY60h3cd+qSc7m1Lyrn5fqIeLJcteG7rhGBojnNT01pN75I6JrvPrvJBDD8qi9EXA5 zA2kRF5OjvMdlcQhQL8cIVdgwe4t8gF+hFoEPkhnDsoenC4vuKyX7zuPtHCrCnvvVthH P22lBC7ZtUX0JEUFCCrTkXX2c8TqDnf61UQZoCH5aX3EeymhzRojAQTjpxPkx96n4uz9 Uomt0NwJJm7C5ldV1MM/VAlGOu2bbtvJy7I06vI/O+8Nh7+CILCYT74bEEKhlEEiKIi2 KPFwLkEm4j97mxrIBswNv4W89ISI+iZAhBrtA+FyEWD6ZJpROTqY27kD/g1Jm1dQHEXt NInQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for 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 e14si10531916edk.310.2020.04.15.06.34.31; Wed, 15 Apr 2020 06:34:55 -0700 (PDT) Received-SPF: pass (google.com: best guess record for 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: best guess record for 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 S1730606AbgDNUny (ORCPT + 99 others); Tue, 14 Apr 2020 16:43:54 -0400 Received: from mga09.intel.com ([134.134.136.24]:32111 "EHLO mga09.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729251AbgDNUnx (ORCPT ); Tue, 14 Apr 2020 16:43:53 -0400 IronPort-SDR: tY3mnLJJMZ37LeY2lerYR74iByqJPSo7WPVr0ZmzcmKklgwAoNBdpSi6z/xIs915+wgeko6NpR T5d4xGyLj44w== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 14 Apr 2020 13:43:50 -0700 IronPort-SDR: jvkuPtTN/g4RAWjWQMPkUlO26mLy522pbJdALXipvnoDStHxBiGv8bGZfJMVMTIjUsa/dZ4LGa Idxxc5Q9+WDw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.72,384,1580803200"; d="scan'208";a="298809188" Received: from iweiny-desk2.sc.intel.com ([10.3.52.147]) by FMSMGA003.fm.intel.com with ESMTP; 14 Apr 2020 13:43:50 -0700 Date: Tue, 14 Apr 2020 13:43:50 -0700 From: Ira Weiny To: Christoph Hellwig Cc: linux-kernel@vger.kernel.org, "Darrick J. Wong" , Dan Williams , Dave Chinner , "Theodore Y. Ts'o" , Jan Kara , Jeff Moyer , linux-ext4@vger.kernel.org, linux-xfs@vger.kernel.org, linux-fsdevel@vger.kernel.org Subject: Re: [PATCH V7 5/9] fs/xfs: Create function xfs_inode_enable_dax() Message-ID: <20200414204349.GB1982089@iweiny-DESK2.sc.intel.com> References: <20200413054046.1560106-1-ira.weiny@intel.com> <20200413054046.1560106-6-ira.weiny@intel.com> <20200414062718.GE23154@lst.de> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20200414062718.GE23154@lst.de> User-Agent: Mutt/1.11.1 (2018-12-01) Sender: linux-ext4-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-ext4@vger.kernel.org On Tue, Apr 14, 2020 at 08:27:18AM +0200, Christoph Hellwig wrote: > On Sun, Apr 12, 2020 at 10:40:42PM -0700, ira.weiny@intel.com wrote: > > From: Ira Weiny > > [snip] > > index 81f2f93caec0..37bd15b55878 100644 > > --- a/fs/xfs/xfs_iops.c > > +++ b/fs/xfs/xfs_iops.c > > @@ -1244,12 +1244,11 @@ xfs_inode_supports_dax( > > struct xfs_mount *mp = ip->i_mount; > > > > /* Only supported on non-reflinked files. */ > > - if (!S_ISREG(VFS_I(ip)->i_mode) || xfs_is_reflink_inode(ip)) > > + if (xfs_is_reflink_inode(ip)) > > return false; > > > > - /* DAX mount option or DAX iflag must be set. */ > > - if (!(mp->m_flags & XFS_MOUNT_DAX) && > > - !(ip->i_d.di_flags2 & XFS_DIFLAG2_DAX)) > > + /* Only supported on regular files. */ > > + if (!S_ISREG(VFS_I(ip)->i_mode)) > > return false; > > To me it would make sense to check S_ISREG before reflink, as it seems > more logical. Done. > > > +#ifdef CONFIG_FS_DAX > > +static bool > > +xfs_inode_enable_dax( > > + struct xfs_inode *ip) > > +{ > > + if (ip->i_mount->m_flags & XFS_MOUNT_NODAX) > > + return false; > > + if (!xfs_inode_supports_dax(ip)) > > + return false; > > + if (ip->i_mount->m_flags & XFS_MOUNT_DAX) > > + return true; > > + if (ip->i_d.di_flags2 & XFS_DIFLAG2_DAX) > > + return true; > > + return false; > > +} > > +#else /* !CONFIG_FS_DAX */ > > +static bool > > +xfs_inode_enable_dax( > > + struct xfs_inode *ip) > > +{ > > + return false; > > +} > > +#endif /* CONFIG_FS_DAX */ > > Just throw in a > > if (!IS_ENABLED(CONFIG_FS_DAX)) > return false; > > as the first statement of the full version and avoid the stub entirely? Sure, less code that way. Done. Ira