From: Dave Jiang Subject: Re: [PATCH] mm: replace FAULT_FLAG_SIZE with parameter to huge_fault Date: Fri, 3 Feb 2017 17:07:24 -0700 Message-ID: <86962573-01b7-4ce7-182e-7a77f183cf0e@intel.com> References: <201702040648.oOjnlEcm%fengguang.wu@intel.com> <2020f442-8e77-cf14-a6b1-b4b00d0da80b@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Cc: kbuild test robot , kbuild-all@01.org, Andrew Morton , Matthew Wilcox , "linux-nvdimm@lists.01.org" , Dave Hansen , linux-xfs@vger.kernel.org, Linux MM , "Kirill A. Shutemov" , Jan Kara , linux-ext4 , Ross Zwisler , Vlastimil Babka To: Dan Williams Return-path: Received: from mga07.intel.com ([134.134.136.100]:13452 "EHLO mga07.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752928AbdBDAH1 (ORCPT ); Fri, 3 Feb 2017 19:07:27 -0500 In-Reply-To: Sender: linux-ext4-owner@vger.kernel.org List-ID: On 02/03/2017 05:00 PM, Dan Williams wrote: > On Fri, Feb 3, 2017 at 3:26 PM, Dan Williams wrote: >> On Fri, Feb 3, 2017 at 3:25 PM, Dave Jiang wrote: >>> On 02/03/2017 03:56 PM, kbuild test robot wrote: >>>> Hi Dave, >>>> >>>> [auto build test ERROR on mmotm/master] >>>> [cannot apply to linus/master linux/master v4.10-rc6 next-20170203] >>>> [if your patch is applied to the wrong git tree, please drop us a note to help improve the system] >>> >>> This one is a bit odd. I just pulled mmotm tree master branch and built >>> with the attached .config and it passed for me (and I don't see this >>> commit in the master branch). I also built linux-next with this patch on >>> top and it also passes with attached .config. Looking at the err log >>> below it seems the code has a mix of partial from before and after the >>> patch. I'm rather confused about it.... >> >> This is a false positive. It tried to build it against latest mainline >> instead of linux-next. > > On second look it seems I ended up with a duplicate > ext4_huge_dax_fault after "git am" when I apply this on top of > next-20170202. The following fixes it up for me and tests fine: I think it's missing this patch from Ross http://marc.info/?l=linux-mm&m=148581319303697&w=2 > > diff --git a/fs/ext4/file.c b/fs/ext4/file.c > index f8f4f6d068e5..e8ab46efc4f9 100644 > --- a/fs/ext4/file.c > +++ b/fs/ext4/file.c > @@ -276,27 +276,6 @@ static int ext4_dax_huge_fault(struct vm_fault *vmf, > return result; > } > > -static int > -ext4_dax_huge_fault(struct vm_fault *vmf) > -{ > - int result; > - struct inode *inode = file_inode(vmf->vma->vm_file); > - struct super_block *sb = inode->i_sb; > - bool write = vmf->flags & FAULT_FLAG_WRITE; > - > - if (write) { > - sb_start_pagefault(sb); > - file_update_time(vmf->vma->vm_file); > - } > - down_read(&EXT4_I(inode)->i_mmap_sem); > - result = dax_iomap_fault(vmf, &ext4_iomap_ops); > - up_read(&EXT4_I(inode)->i_mmap_sem); > - if (write) > - sb_end_pagefault(sb); > - > - return result; > -} > - > static int ext4_dax_fault(struct vm_fault *vmf) > { > return ext4_dax_huge_fault(vmf, PE_SIZE_PTE); >