* [rcu:mmap_sem.2017.08.09a 6/16] mm/internal.h:59:26: error: 'struct vm_fault' has no member named 'sequence'
@ 2017-08-09 21:47 kbuild test robot
2017-08-10 8:41 ` Laurent Dufour
0 siblings, 1 reply; 2+ messages in thread
From: kbuild test robot @ 2017-08-09 21:47 UTC (permalink / raw)
To: Peter Zijlstra; +Cc: kbuild-all, linux-kernel, Paul E. McKenney, Laurent Dufour
[-- Attachment #1: Type: text/plain, Size: 1877 bytes --]
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;
^~
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
[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 6665 bytes --]
^ permalink raw reply [flat|nested] 2+ messages in thread* Re: [rcu:mmap_sem.2017.08.09a 6/16] mm/internal.h:59:26: error: 'struct vm_fault' has no member named 'sequence'
2017-08-09 21:47 [rcu:mmap_sem.2017.08.09a 6/16] mm/internal.h:59:26: error: 'struct vm_fault' has no member named 'sequence' kbuild test robot
@ 2017-08-10 8:41 ` Laurent Dufour
0 siblings, 0 replies; 2+ messages in thread
From: Laurent Dufour @ 2017-08-10 8:41 UTC (permalink / raw)
To: kbuild test robot, Peter Zijlstra
Cc: kbuild-all, linux-kernel, Paul E. McKenney
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
>
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2017-08-10 8:43 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-08-09 21:47 [rcu:mmap_sem.2017.08.09a 6/16] mm/internal.h:59:26: error: 'struct vm_fault' has no member named 'sequence' kbuild test robot
2017-08-10 8:41 ` Laurent Dufour
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®