Received: by 2002:a25:4158:0:0:0:0:0 with SMTP id o85csp271117yba; Thu, 25 Apr 2019 23:02:47 -0700 (PDT) X-Google-Smtp-Source: APXvYqyYtY5J5LvaqDlso7h2vK1aCeCpMK6yKpnHo0ZUGqSFL9nG1bcdvAq+vfNJKc/5Ct0ydx5R X-Received: by 2002:a17:902:8545:: with SMTP id d5mr8795348plo.198.1556258567764; Thu, 25 Apr 2019 23:02:47 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1556258567; cv=none; d=google.com; s=arc-20160816; b=Zyyz2o5FQ3f42LkjlxExiHKNXiV3Sf9eS/qrk4LC0pxlmoISRB+/nbrUHkZO8SK0nr +VR1CCjCHgb1jdeCgyZB4EZoHpfqfsSuAD9/Y7etz5am1U23+tF+r1es+DF5ZBJh1xLw ZhoZeHEomuGzSpseX2avuttAJY/0qDkjh6lAZv06vH4wCEwHZOoaFhPFh9B13JtZz+zQ qqP3cfKkWt6jOh9QEVIHaS7Z8Md9Klko2SUqpCf2WVoK2IinUHX0zc4zZEWL6goQd6fX LNgRx4V7296lTE8S3ysR3zYUaZEi1p5Ubbo0jE1nQncW3l7MTsXrt2M+sABO1TmRkU44 NDDg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:date:cc:to:subject:from:references :in-reply-to:message-id:dkim-signature; bh=ewx+tBrBV0h3kTs0FOAHh7m2QwZl2MZ3GEixJkhfpJY=; b=bEKkFKtFa9X+H9cqDvk4o0HwzC+5mr867bLXM11ry/7rZK8nEJ4qyjQj1RAyVIMqkQ fg0+tZdFPHSAlyfljm9yw5W0HCO3i/n/m/WvupxAik4f7BWgSF7NboWJ/RhgHySoT5PJ czDXR6I7NW0/9F9GE8TUZWS9tP15z0bk5u7SJzY7sF4CN9Z4NLbY79VSriAL/veejAkT kawkLO5Tlc0d/U0bIh/4LkgOpeVyIArPMe4ex++u4+te0hvKQ4bGoswG2JVGaCOUvIws Q1WJ17QaKZLpnDNjJmD8lILIjxrfmr2L9oZuk1sDzhCRo/tZpr3FEuIPmqDeg8RpqrMH Q3TQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@c-s.fr header.s=mail header.b=BgBxJcvR; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id u31si10458979pgl.438.2019.04.25.23.02.32; Thu, 25 Apr 2019 23:02:47 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@c-s.fr header.s=mail header.b=BgBxJcvR; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727603AbfDZGBF (ORCPT + 99 others); Fri, 26 Apr 2019 02:01:05 -0400 Received: from pegase1.c-s.fr ([93.17.236.30]:44598 "EHLO pegase1.c-s.fr" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726628AbfDZF7p (ORCPT ); Fri, 26 Apr 2019 01:59:45 -0400 Received: from localhost (mailhub1-int [192.168.12.234]) by localhost (Postfix) with ESMTP id 44r3Kq1cHlz9v1vK; Fri, 26 Apr 2019 07:59:43 +0200 (CEST) Authentication-Results: localhost; dkim=pass reason="1024-bit key; insecure key" header.d=c-s.fr header.i=@c-s.fr header.b=BgBxJcvR; dkim-adsp=pass; dkim-atps=neutral X-Virus-Scanned: Debian amavisd-new at c-s.fr Received: from pegase1.c-s.fr ([192.168.12.234]) by localhost (pegase1.c-s.fr [192.168.12.234]) (amavisd-new, port 10024) with ESMTP id EnCHhmBsEhmP; Fri, 26 Apr 2019 07:59:43 +0200 (CEST) Received: from messagerie.si.c-s.fr (messagerie.si.c-s.fr [192.168.25.192]) by pegase1.c-s.fr (Postfix) with ESMTP id 44r3Kq0PPJz9v1tj; Fri, 26 Apr 2019 07:59:43 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=c-s.fr; s=mail; t=1556258383; bh=ewx+tBrBV0h3kTs0FOAHh7m2QwZl2MZ3GEixJkhfpJY=; h=In-Reply-To:References:From:Subject:To:Cc:Date:From; b=BgBxJcvRQ9v50/Yrp7fvWjctCWPGasKy8ct6774+cVhPR6Psi9FQhIHx2WJ1WhN07 GDX/z6f00JzMEbXt8fXJycdWzWkEtfelGgYHv7uKVSahTcmH84iMPXPGBJUnOqoc/q 0thyJn+X281+IrsgCvbpEcGMxFHnUNelMxinnvXI= Received: from localhost (localhost [127.0.0.1]) by messagerie.si.c-s.fr (Postfix) with ESMTP id E56D98B807; Fri, 26 Apr 2019 07:59:43 +0200 (CEST) X-Virus-Scanned: amavisd-new at c-s.fr Received: from messagerie.si.c-s.fr ([127.0.0.1]) by localhost (messagerie.si.c-s.fr [127.0.0.1]) (amavisd-new, port 10023) with ESMTP id 3IL-7gcvZ6PD; Fri, 26 Apr 2019 07:59:43 +0200 (CEST) Received: from po16846vm.idsi0.si.c-s.fr (po15451.idsi0.si.c-s.fr [172.25.231.6]) by messagerie.si.c-s.fr (Postfix) with ESMTP id CE5628B74C; Fri, 26 Apr 2019 07:59:43 +0200 (CEST) Received: by po16846vm.idsi0.si.c-s.fr (Postfix, from userid 0) id B074466278; Fri, 26 Apr 2019 05:59:43 +0000 (UTC) Message-Id: <2a57ef2502c7b5c0664dafb46ae7330ed7e29fc6.1556258135.git.christophe.leroy@c-s.fr> In-Reply-To: References: From: Christophe Leroy Subject: [PATCH v2 08/17] powerpc/mm: make gup_hugepte() static To: Benjamin Herrenschmidt , Paul Mackerras , Michael Ellerman , aneesh.kumar@linux.ibm.com Cc: linux-kernel@vger.kernel.org, linuxppc-dev@lists.ozlabs.org Date: Fri, 26 Apr 2019 05:59:43 +0000 (UTC) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org gup_huge_pd() is the only user of gup_hugepte() and it is located in the same file. This patch moves gup_huge_pd() after gup_hugepte() and makes gup_hugepte() static. Signed-off-by: Christophe Leroy --- arch/powerpc/include/asm/pgtable.h | 3 --- arch/powerpc/mm/hugetlbpage.c | 38 +++++++++++++++++++------------------- 2 files changed, 19 insertions(+), 22 deletions(-) diff --git a/arch/powerpc/include/asm/pgtable.h b/arch/powerpc/include/asm/pgtable.h index 505550fb2935..c51846da41a7 100644 --- a/arch/powerpc/include/asm/pgtable.h +++ b/arch/powerpc/include/asm/pgtable.h @@ -89,9 +89,6 @@ extern void paging_init(void); */ extern void update_mmu_cache(struct vm_area_struct *, unsigned long, pte_t *); -extern int gup_hugepte(pte_t *ptep, unsigned long sz, unsigned long addr, - unsigned long end, int write, - struct page **pages, int *nr); #ifndef CONFIG_TRANSPARENT_HUGEPAGE #define pmd_large(pmd) 0 #endif diff --git a/arch/powerpc/mm/hugetlbpage.c b/arch/powerpc/mm/hugetlbpage.c index 809f8f167962..ef0f5b8e87fd 100644 --- a/arch/powerpc/mm/hugetlbpage.c +++ b/arch/powerpc/mm/hugetlbpage.c @@ -539,23 +539,6 @@ static unsigned long hugepte_addr_end(unsigned long addr, unsigned long end, return (__boundary - 1 < end - 1) ? __boundary : end; } -int gup_huge_pd(hugepd_t hugepd, unsigned long addr, unsigned pdshift, - unsigned long end, int write, struct page **pages, int *nr) -{ - pte_t *ptep; - unsigned long sz = 1UL << hugepd_shift(hugepd); - unsigned long next; - - ptep = hugepte_offset(hugepd, addr, pdshift); - do { - next = hugepte_addr_end(addr, end, sz); - if (!gup_hugepte(ptep, sz, addr, end, write, pages, nr)) - return 0; - } while (ptep++, addr = next, addr != end); - - return 1; -} - #ifdef CONFIG_PPC_MM_SLICES unsigned long hugetlb_get_unmapped_area(struct file *file, unsigned long addr, unsigned long len, unsigned long pgoff, @@ -753,8 +736,8 @@ void flush_dcache_icache_hugepage(struct page *page) } } -int gup_hugepte(pte_t *ptep, unsigned long sz, unsigned long addr, - unsigned long end, int write, struct page **pages, int *nr) +static int gup_hugepte(pte_t *ptep, unsigned long sz, unsigned long addr, + unsigned long end, int write, struct page **pages, int *nr) { unsigned long pte_end; struct page *head, *page; @@ -800,3 +783,20 @@ int gup_hugepte(pte_t *ptep, unsigned long sz, unsigned long addr, return 1; } + +int gup_huge_pd(hugepd_t hugepd, unsigned long addr, unsigned int pdshift, + unsigned long end, int write, struct page **pages, int *nr) +{ + pte_t *ptep; + unsigned long sz = 1UL << hugepd_shift(hugepd); + unsigned long next; + + ptep = hugepte_offset(hugepd, addr, pdshift); + do { + next = hugepte_addr_end(addr, end, sz); + if (!gup_hugepte(ptep, sz, addr, end, write, pages, nr)) + return 0; + } while (ptep++, addr = next, addr != end); + + return 1; +} -- 2.13.3