From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751836AbcDRImh (ORCPT ); Mon, 18 Apr 2016 04:42:37 -0400 Received: from e28smtp05.in.ibm.com ([125.16.236.5]:45386 "EHLO e28smtp05.in.ibm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750849AbcDRImf (ORCPT ); Mon, 18 Apr 2016 04:42:35 -0400 X-IBM-Helo: d28relay01.in.ibm.com X-IBM-MailFrom: khandual@linux.vnet.ibm.com X-IBM-RcptTo: linux-kernel@vger.kernel.org Message-ID: <57149DE9.9060600@linux.vnet.ibm.com> Date: Mon, 18 Apr 2016 14:12:17 +0530 From: Anshuman Khandual User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0 MIME-Version: 1.0 To: kbuild test robot CC: linux-mm@kvack.org, linuxppc-dev@lists.ozlabs.org, hughd@google.com, linux-kernel@vger.kernel.org, dave.hansen@intel.com, kbuild-all@01.org, kirill@shutemov.name, n-horiguchi@ah.jp.nec.com, mgorman@techsingularity.net, akpm@linux-foundation.org, aneesh.kumar@linux.vnet.ibm.com Subject: Re: [PATCH 03/10] mm/hugetlb: Protect follow_huge_(pud|pgd) functions from race References: <201604071708.osnfXWQP%fengguang.wu@intel.com> <570B3E51.2090308@linux.vnet.ibm.com> In-Reply-To: <570B3E51.2090308@linux.vnet.ibm.com> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-TM-AS-MML: disable x-cbid: 16041808-0017-0000-0000-00001E13216A Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 04/11/2016 11:34 AM, Anshuman Khandual wrote: > On 04/07/2016 03:04 PM, kbuild test robot wrote: >> > All errors (new ones prefixed by >>): >> > >> > mm/hugetlb.c: In function 'follow_huge_pud': >>>>>> >>> >> mm/hugetlb.c:4360:3: error: implicit declaration of function 'pud_page' [-Werror=implicit-function-declaration] >> > page = pud_page(*pud) + ((address & ~PUD_MASK) >> PAGE_SHIFT); >> > ^ >> > mm/hugetlb.c:4360:8: warning: assignment makes pointer from integer without a cast >> > page = pud_page(*pud) + ((address & ~PUD_MASK) >> PAGE_SHIFT); >> > ^ >> > mm/hugetlb.c: In function 'follow_huge_pgd': >> > mm/hugetlb.c:4395:3: error: implicit declaration of function 'pgd_page' [-Werror=implicit-function-declaration] >> > page = pgd_page(*pgd) + ((address & ~PGDIR_MASK) >> PAGE_SHIFT); > Both the build errors here are because of the fact that pgd_page() is > not available for some platforms and config options. It got missed as > I ran only powerpc config options for build test purpose. My bad, will > fix it. The following change seems to fix the build problem on S390 but will require some inputs from S390 maintainers regarding the functional correctness of the patch. diff --git a/arch/s390/include/asm/pgtable.h b/arch/s390/include/asm/pgtable.h index 2f66645..834a8a6 100644 --- a/arch/s390/include/asm/pgtable.h +++ b/arch/s390/include/asm/pgtable.h @@ -963,6 +963,8 @@ static inline pmd_t *pmd_offset(pud_t *pud, unsigned long address) #define pte_page(x) pfn_to_page(pte_pfn(x)) #define pmd_page(pmd) pfn_to_page(pmd_pfn(pmd)) +#define pud_page(pud) pud_val(pud) +#define pgd_page(pgd) pgd_val(pgd)