Received: by 2002:a05:6a10:8c0a:0:0:0:0 with SMTP id go10csp229401pxb; Tue, 2 Feb 2021 03:49:50 -0800 (PST) X-Google-Smtp-Source: ABdhPJxwdODlmTVkNZd6Lf5Gvn0smrTezE252/AQe17mODGC2nLbRiYAWeDjuGPczHBitVBT7y6V X-Received: by 2002:a17:906:938d:: with SMTP id l13mr1717326ejx.271.1612266590408; Tue, 02 Feb 2021 03:49:50 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1612266590; cv=none; d=google.com; s=arc-20160816; b=l8TyQsTUEN3JFUj8XSuLWNrqB/2knsgh0K6JHFePNSWz9ZmEyVXcGin8LBRo13Hcxp lZpCPI+jl3Oa1tE1KUxhEHgvGQFZTgAdvA1aTXTvf3KhWsrd1TkQ2Tpa56ib1DXphhWQ ispiaaUNxBs/IWqjRMXY0EgihLG/4qo97zf5VCtOJSPWoEBNmJBMG3XVWXQz1S8kdeSz tsLSot1qUsmuXpxLRDnUxv7+wyRR1L6eHpF/L/0QiYCiYwN5NEtRzXoIG9WVsjZ45yir 71ux1kn3Wyy2QEh1Di4Q+UetPNGsumseF030pJjPStc78FwF/S1O5EnvQqWEurEwr8bJ sGWg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:content-language :in-reply-to:mime-version:user-agent:date:message-id:from:references :cc:to:subject; bh=07GU8Zz8HGvZDsjTZCChTFAGbWrX8FVqxedecPzFLmY=; b=ii9OTCI2aCxie90vBL4DyrGiZ1V0FZbPsk5kkaq5fwFqn9kEiXrMAxS8Ch6gIkNH90 Kt/jc3EPcUuy0wt5LiKvaec62wmHP3bIlEaN7rNvPsDIucnVxUGqFFFEb1VkzmpUiAlH xrOdRrAJl759Lq6RuLwOjPzQGhanxhOLsPCl+qSQTFcIVlGdaoFmQLD8PFIw2ZrRi5yi Akmy8vmPVTzsRBj69xgcRuz534asF66GRyQMqyYFR2iPP2FdqZisCXfUkgrBjh/IPPDU ktaIxJ/77Lj3AWpuKO2jlhfgFkxMpN+OzgZKfTapLAL27HH9JC1J1+D3iieOYekjar8i IF1w== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id q24si3685986edi.540.2021.02.02.03.49.25; Tue, 02 Feb 2021 03:49:50 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229870AbhBBLr5 (ORCPT + 99 others); Tue, 2 Feb 2021 06:47:57 -0500 Received: from szxga05-in.huawei.com ([45.249.212.191]:12065 "EHLO szxga05-in.huawei.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229835AbhBBLr5 (ORCPT ); Tue, 2 Feb 2021 06:47:57 -0500 Received: from DGGEMS402-HUB.china.huawei.com (unknown [172.30.72.60]) by szxga05-in.huawei.com (SkyGuard) with ESMTP id 4DVNKq0sXyzMSry; Tue, 2 Feb 2021 19:45:35 +0800 (CST) Received: from [10.174.177.80] (10.174.177.80) by DGGEMS402-HUB.china.huawei.com (10.3.19.202) with Microsoft SMTP Server id 14.3.498.0; Tue, 2 Feb 2021 19:47:04 +0800 Subject: Re: [PATCH v12 01/14] ARM: mm: add missing pud_page define to 2-level page tables To: Russell King - ARM Linux admin , Nicholas Piggin CC: , Andrew Morton , , , , Jonathan Cameron , Christoph Hellwig , Christophe Leroy , Rick Edgecombe , References: <20210202110515.3575274-1-npiggin@gmail.com> <20210202110515.3575274-2-npiggin@gmail.com> <20210202111319.GL1463@shell.armlinux.org.uk> From: Ding Tianhong Message-ID: Date: Tue, 2 Feb 2021 19:47:04 +0800 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.3.2 MIME-Version: 1.0 In-Reply-To: <20210202111319.GL1463@shell.armlinux.org.uk> Content-Type: text/plain; charset="utf-8" Content-Language: en-GB Content-Transfer-Encoding: 7bit X-Originating-IP: [10.174.177.80] X-CFilter-Loop: Reflected Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 2021/2/2 19:13, Russell King - ARM Linux admin wrote: > On Tue, Feb 02, 2021 at 09:05:02PM +1000, Nicholas Piggin wrote: >> diff --git a/arch/arm/include/asm/pgtable.h b/arch/arm/include/asm/pgtable.h >> index c02f24400369..d63a5bb6bd0c 100644 >> --- a/arch/arm/include/asm/pgtable.h >> +++ b/arch/arm/include/asm/pgtable.h >> @@ -166,6 +166,9 @@ extern struct page *empty_zero_page; >> >> extern pgd_t swapper_pg_dir[PTRS_PER_PGD]; >> >> +#define pud_page(pud) pmd_page(__pmd(pud_val(pud))) >> +#define pud_write(pud) pmd_write(__pmd(pud_val(pud))) > > As there is no PUD, does it really make sense to return a valid > struct page (which will be the PTE page) for pud_page(), which is > several tables above? > --- a/arch/arm/include/asm/pgtable-2level.h +++ b/arch/arm/include/asm/pgtable-2level.h +static inline int pud_none(pud_t pud) +{ + return 0; +} I think it could be fix like this. Ding