Received: by 2002:a05:6902:102b:0:0:0:0 with SMTP id x11csp529781ybt; Wed, 17 Jun 2020 07:25:23 -0700 (PDT) X-Google-Smtp-Source: ABdhPJw6XmtZtqXDoUi6sUkkXC7wjy53UqlCicx8VkcUkvNdDABFkf1KJkqWEnR3Gw61xSdMddCe X-Received: by 2002:aa7:d74c:: with SMTP id a12mr7575951eds.369.1592403922929; Wed, 17 Jun 2020 07:25:22 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1592403922; cv=none; d=google.com; s=arc-20160816; b=0Kk/O7k5YDzpaD6Y67cAgEA/kkSYg1fVqkQlSRy8EsQomrXmBokXy85fy0z+Z5S5eq 0a0YtcNeHYgo12MjzpssJrhdfZWZ8mx/Nt5CXLfM0xkvY+gRsfGjeeF2YNWxqm4pqEDG WSrKGWRtA31qoKdWo7JR+SA8PhBVUHEKaOrMXZnKbHMsAsgBe50ve92ZNA178dQCqvcD vb6lZdsuXG8rsEfS+TNFWxnNrYAhG7JjCINy2uH3l0eNOuZPzzZ89Yxv0ai0ag/M9aQR fkLFDpn/SdMWUbMos3Qpf0pfQebB7MwHJmoZVEUF1FLYCuBYhBGkL3TIkcL2SY3ReM+D TZeQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:message-id:date:references :in-reply-to:subject:cc:to:from:dkim-signature; bh=fq8r/ZwoXeJc8s4rNF7SRsOCa00YY/Jwn2RIyt9pnHE=; b=APSZXZk4I4oNx61nCUeBniHyIMeYPN7noXenZrEfIIqhFuYdNEPmACEiBxAC/PTg3/ IHWwLRNewiRJPDzkvXfVGAYJD70Y0hlIv9rIzKqBYRzxYZunUOqmRxiM63/SV0FNo1fp GkHdvQVBme4/AVSJEiTUuYqnRaaF+jkF2//zCJ6+7muYMBzlB7G4w9pSHVqW8YuQX6+p dvxEzvPL0+mK/eH/XSm4cOb9j/7UKh4SNz7pHIYj67jlbuBsmeImBXj71AtD2ySUU98p HUxJB0r2tCtyxgtoyTuzugNlw0Ic+KiClf2Qzn4tHlUH5ZsUuvoXQTTTVrutnXAwckm8 TagQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@ellerman.id.au header.s=201909 header.b=lxdjEtyN; 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 q5si65979edw.228.2020.06.17.07.24.58; Wed, 17 Jun 2020 07:25:22 -0700 (PDT) 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; dkim=pass header.i=@ellerman.id.au header.s=201909 header.b=lxdjEtyN; 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 S1726920AbgFQOU6 (ORCPT + 99 others); Wed, 17 Jun 2020 10:20:58 -0400 Received: from bilbo.ozlabs.org ([203.11.71.1]:56691 "EHLO ozlabs.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726495AbgFQOU5 (ORCPT ); Wed, 17 Jun 2020 10:20:57 -0400 Received: from authenticated.ozlabs.org (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by mail.ozlabs.org (Postfix) with ESMTPSA id 49n6g82rTMz9sRR; Thu, 18 Jun 2020 00:20:52 +1000 (AEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ellerman.id.au; s=201909; t=1592403652; bh=nT3jSQ10DdCeaRDuIzvG9LLp2BdupDQ+BbxCSWTl9i0=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=lxdjEtyNE10rEnpgqyn+zSVpLONzbnqx1pRDsdksAsyo2Rx8gEhf0XljLdpg6KjCO +66bPAJTtxOkdxUa6KHgOgYEiDz+W93amRTMOIk5Sm67SJxLod5dgevLZOLPbf5XSJ e/Hk1VYT4oU0+OQ+lFZJt0LSHDtmI/xVxmuDULhX6ODWj+ii7ShLU0HHyBLi9LX8iW gwnyPJMMX8T6aJYR0K4BFis9I3V7o+IY1ZPI7whFiGBp30gRFOROr4G/Jdu40VJoGi UG5lUCwblNTFME+U+kFaZiBO8Ke8jwShBK3SUywjpEKRpe8tCiKqjD3CjcgrbWvCjz sxAKyguruOPKw== From: Michael Ellerman To: Peter Zijlstra , Christophe Leroy Cc: Benjamin Herrenschmidt , Paul Mackerras , Will Deacon , Andrew Morton , linux-kernel@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-mm@kvack.org Subject: Re: [PATCH 3/3] powerpc/8xx: Provide ptep_get() with 16k pages In-Reply-To: <20200615132244.GR2531@hirez.programming.kicks-ass.net> References: <341688399c1b102756046d19ea6ce39db1ae4742.1592225558.git.christophe.leroy@csgroup.eu> <20200615132244.GR2531@hirez.programming.kicks-ass.net> Date: Thu, 18 Jun 2020 00:21:22 +1000 Message-ID: <87wo45db8d.fsf@mpe.ellerman.id.au> MIME-Version: 1.0 Content-Type: text/plain Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Peter Zijlstra writes: > On Mon, Jun 15, 2020 at 12:57:59PM +0000, Christophe Leroy wrote: >> READ_ONCE() now enforces atomic read, which leads to: > >> Fixes: 2ab3a0a02905 ("READ_ONCE: Enforce atomicity for {READ,WRITE}_ONCE() memory accesses") >> Cc: Will Deacon >> Signed-off-by: Christophe Leroy >> --- >> arch/powerpc/include/asm/nohash/32/pgtable.h | 10 ++++++++++ >> 1 file changed, 10 insertions(+) >> >> diff --git a/arch/powerpc/include/asm/nohash/32/pgtable.h b/arch/powerpc/include/asm/nohash/32/pgtable.h >> index b56f14160ae5..77addb599ce7 100644 >> --- a/arch/powerpc/include/asm/nohash/32/pgtable.h >> +++ b/arch/powerpc/include/asm/nohash/32/pgtable.h >> @@ -286,6 +286,16 @@ static inline pte_t ptep_get_and_clear(struct mm_struct *mm, unsigned long addr, >> return __pte(pte_update(mm, addr, ptep, ~0, 0, 0)); >> } >> >> +#if defined(CONFIG_PPC_8xx) && defined(CONFIG_PPC_16K_PAGES) >> +#define __HAVE_ARCH_PTEP_GET >> +static inline pte_t ptep_get(pte_t *ptep) >> +{ >> + pte_t pte = {READ_ONCE(ptep->pte), 0, 0, 0}; >> + >> + return pte; >> +} >> +#endif > > Would it make sense to have a comment with this magic? The casual reader > might wonder WTH just happened when he stumbles on this :-) I tried writing a helpful comment but it's too late for my brain to form sensible sentences. Christophe can you send a follow-up with a comment explaining it? In particular the zero entries stand out, it's kind of subtle that those entries are only populated with the right value when we write to the page table. cheers