Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752383AbdHJInT (ORCPT ); Thu, 10 Aug 2017 04:43:19 -0400 Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5]:57893 "EHLO mx0a-001b2d01.pphosted.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752486AbdHJIld (ORCPT ); Thu, 10 Aug 2017 04:41:33 -0400 Subject: Re: [rcu:mmap_sem.2017.08.09a 6/16] mm/internal.h:59:26: error: 'struct vm_fault' has no member named 'sequence' To: kbuild test robot , Peter Zijlstra Cc: kbuild-all@01.org, linux-kernel@vger.kernel.org, "Paul E. McKenney" References: <201708100538.jnTepUPA%fengguang.wu@intel.com> From: Laurent Dufour Date: Thu, 10 Aug 2017 10:41:26 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.1 MIME-Version: 1.0 In-Reply-To: <201708100538.jnTepUPA%fengguang.wu@intel.com> Content-Type: text/plain; charset=windows-1252 Content-Language: fr Content-Transfer-Encoding: 7bit X-TM-AS-GCONF: 00 x-cbid: 17081008-0020-0000-0000-000003AD63D6 X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 17081008-0021-0000-0000-0000423B12AF Message-Id: <4e820304-2b59-eb97-4c48-6e0ca94d26a8@linux.vnet.ibm.com> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:,, definitions=2017-08-10_02:,, signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 suspectscore=1 malwarescore=0 phishscore=0 adultscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1706020000 definitions=main-1708100142 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2360 Lines: 61 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 >