On 09/08/2017 23:47, kbuild test robot wrote: > tree: https://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu.git > mmap_sem.2017.08.09a > head: 39782fbd9252a3ace9b49a55f4dd2a41a6ced31f > commit: 1b801585f6b03276db9722dc725a50ca11439467 [6/16] mm: RCU free VMAs > config: i386-tinyconfig (attached as .config) > compiler: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901 > reproduce: > git checkout 1b801585f6b03276db9722dc725a50ca11439467 > # save the attached .config to linux build tree > make ARCH=i386 > > Note: the rcu/mmap_sem.2017.08.09a HEAD > 39782fbd9252a3ace9b49a55f4dd2a41a6ced31f builds fine. > It only hurts bisectibility. > > All errors (new ones prefixed by >>): > > In file included from mm/filemap.c:39:0: > mm/internal.h: In function 'vma_has_changed': >>> mm/internal.h:59:26: error: 'struct vm_fault' has no member named 'sequence' > return ret || seq != vmf->sequence; > ^~ > -- > In file included from lib/vsprintf.c:40:0: > lib/../mm/internal.h: In function 'vma_has_changed': >>> lib/../mm/internal.h:59:26: error: 'struct vm_fault' has no member named >>> 'sequence' > return ret || seq != vmf->sequence;> ^~
This is because I remove the sequence parameter to this service to rely on vmf->sequence. But the sequence field is added to the vm fault structure in the next patch. I'll move the define of vma_has_changed to the next patch introducing the speculative page fault handler since this service is not used in this patch. Cheers, Laurent. > vim +59 mm/internal.h > > 44 > 45 extern struct vm_area_struct *find_vma_srcu(struct mm_struct > *mm, > 46 unsigned long addr); > 47 > 48 static inline bool vma_has_changed(struct vm_fault *vmf) > 49 { > 50 int ret = RB_EMPTY_NODE(&vmf->vma->vm_rb); > 51 unsigned seq = > ACCESS_ONCE(vmf->vma->vm_sequence.sequence); > 52 > 53 /* > 54 * Matches both the wmb in write_seqlock_{begin,end}() > and > 55 * the wmb in vma_rb_erase(). > 56 */ > 57 smp_rmb(); > 58 > > 59 return ret || seq != vmf->sequence; > 60 } > 61 > > --- > 0-DAY kernel test infrastructure Open Source Technology Center > https://lists.01.org/pipermail/kbuild-all Intel Corporation >