Received: by 2002:ac0:946b:0:0:0:0:0 with SMTP id j40csp2723463imj; Mon, 18 Feb 2019 10:58:35 -0800 (PST) X-Google-Smtp-Source: AHgI3Ia7nHF2w1Yyzkd/kOyPCOt+93HAlTOq438jtYUeqBKmzmDQpBGsFdI5PILRFad6yBXmpp3v X-Received: by 2002:a63:2ccb:: with SMTP id s194mr20010026pgs.214.1550516315721; Mon, 18 Feb 2019 10:58:35 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1550516315; cv=none; d=google.com; s=arc-20160816; b=YN1kGnAnLNqFxljOpEZKTf/79z3gsg+5UsG8BLb3FjGTbzQ/N9YyNW9ijIWSny8uFJ 0W/ssirO9H5x2/O9jv1llIqgmAbpWzWA96eqrfJ2Lv4dNEGnwmHjVB1wsh6HntVGCppb bSOcDN9uVcZLqE6zWvImUJvLB3dSQjwgv4DjDn4StCHQBUztf3QGpfUgqsP0iyHfN7Xr PAE9pQHolxHpwhXydNkQmj4dLQgd3NyFOkF7YmUQY8sRBE7pU64CgOtKfOhdB/RF9DkJ QW++cqgobaNtI8RjoN+mydUBi5j5hO+rBnyXEjals4NNkB/RZK3PADB6gKRpUjZaefrm 8sVA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date; bh=zRxzq5NcWzVfKHAtosFBjQ0qO/xhFxoWAoaOoPHqiCY=; b=tUTswqjr36lax3YW+rNI23AgRpoEmiQvMUbTJ414gWwn3p8M1kovhH6cLlY67MJ0u+ 1uBWoz2wxdjwIJueiEw09H62VLKbiznFAX3zb+9nD6KJZYF2m+Yem5GifYTuhq5UAK1c NXahMuGZiu9gHu3Dvug2BVQlcsL25Y3v5YKcEwQW6y6JD4xhiW/0+G6eKJ3wy1jH1Za4 pauk5LAnmCDYRH2GlmwO2M0GcSyoXm7WXhYRHmT6qzjj2/YxFh20jtImzZBWcU/ZQZBl /XZ0NTUA52IugmNFHvGzPGz+O+t2VFHDZ686SU3+IUKvE6gbUx5W8Gn4mO9XOes5S6fH xrRQ== ARC-Authentication-Results: i=1; mx.google.com; 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 e67si15264112plb.107.2019.02.18.10.58.20; Mon, 18 Feb 2019 10:58:35 -0800 (PST) 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; 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 S2387940AbfBRRFI (ORCPT + 99 others); Mon, 18 Feb 2019 12:05:08 -0500 Received: from foss.arm.com ([217.140.101.70]:34422 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1731720AbfBRRFI (ORCPT ); Mon, 18 Feb 2019 12:05:08 -0500 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 28F431BB0; Mon, 18 Feb 2019 09:05:02 -0800 (PST) Received: from lakrids.cambridge.arm.com (usa-sjc-imap-foss1.foss.arm.com [10.72.51.249]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 2FE863F675; Mon, 18 Feb 2019 09:04:54 -0800 (PST) Date: Mon, 18 Feb 2019 17:04:51 +0000 From: Mark Rutland To: Steven Price Cc: Peter Zijlstra , Dave Hansen , Arnd Bergmann , Ard Biesheuvel , Catalin Marinas , x86@kernel.org, Will Deacon , linux-kernel@vger.kernel.org, linux-mm@kvack.org, =?utf-8?B?SsOpcsO0bWU=?= Glisse , Ingo Molnar , Borislav Petkov , Andy Lutomirski , "H. Peter Anvin" , James Morse , Thomas Gleixner , linux-arm-kernel@lists.infradead.org Subject: Re: [PATCH 01/13] arm64: mm: Add p?d_large() definitions Message-ID: <20190218170451.GB10145@lakrids.cambridge.arm.com> References: <20190215170235.23360-1-steven.price@arm.com> <20190215170235.23360-2-steven.price@arm.com> <20190218112922.GT32477@hirez.programming.kicks-ass.net> <20190218142951.GA10145@lakrids.cambridge.arm.com> <20190218150657.GU32494@hirez.programming.kicks-ass.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.11.1+11 (2f07cb52) (2018-12-01) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Feb 18, 2019 at 03:30:38PM +0000, Steven Price wrote: > On 18/02/2019 15:06, Peter Zijlstra wrote: > > On Mon, Feb 18, 2019 at 02:29:52PM +0000, Mark Rutland wrote: > >> I think that Peter means p?d_huge(x) should imply p?d_large(x), e.g. > >> > >> #define pmd_large(x) \ > >> (pmd_sect(x) || pmd_huge(x) || pmd_trans_huge(x)) > >> > >> ... which should work regardless of CONFIG_HUGETLB_PAGE. > > > > Yep, that. > > I'm not aware of a situation where pmd_huge(x) is true but pmd_sect(x) > isn't. Equally for pmd_huge(x) and pmd_trans_huge(x). > > What am I missing? Having dug for a bit, I think you're right in asserting that pmd_sect() should cover those. I had worried that wouldn't cater for contiguous pmd entries, but those have to be contiguous section entries, so they get picked up. That said, do we have any special handling for contiguous PTEs? We use those in kernel mappings regardless of hugetlb support, and I didn't spot a pte_large() helper. Thanks, Mark.