From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-0.9 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE, SPF_PASS autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 78141C4BA0A for ; Wed, 26 Feb 2020 04:22:35 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id 1129C2084E for ; Wed, 26 Feb 2020 04:22:35 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=canb.auug.org.au header.i=@canb.auug.org.au header.b="ojmiolmz" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 1129C2084E Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=canb.auug.org.au Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id A82A86B0003; Tue, 25 Feb 2020 23:22:34 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id A32B86B0005; Tue, 25 Feb 2020 23:22:34 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 947836B0006; Tue, 25 Feb 2020 23:22:34 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0066.hostedemail.com [216.40.44.66]) by kanga.kvack.org (Postfix) with ESMTP id 7BE186B0003 for ; Tue, 25 Feb 2020 23:22:34 -0500 (EST) Received: from smtpin09.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay05.hostedemail.com (Postfix) with ESMTP id 26C97181AC9B6 for ; Wed, 26 Feb 2020 04:22:34 +0000 (UTC) X-FDA: 76530981828.09.step98_8aad597ae0f5d X-HE-Tag: step98_8aad597ae0f5d X-Filterd-Recvd-Size: 4074 Received: from ozlabs.org (ozlabs.org [203.11.71.1]) by imf13.hostedemail.com (Postfix) with ESMTP for ; Wed, 26 Feb 2020 04:22:32 +0000 (UTC) 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 48S2hM70xxz9sPK; Wed, 26 Feb 2020 15:22:27 +1100 (AEDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=canb.auug.org.au; s=201702; t=1582690948; bh=hkKd/vDO1FjJsDXckx8pOpPEjiUSzjPSzIupVcaFgJQ=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=ojmiolmzeUcLx+B5kAlItsRdO53JKMwg7v7DLIUdmKM6pgYOL+R+vu2N/UXEafq0F Xlcy/LxS1oIvAcOmZ1QATQKvkwFcyO5oEWewg4pZ7Ax+LizcMvjoRleIBiUWqFoTvX jRM8Xp9Uu2gRq6dwlL+QN+UbbmbqB2BNJqNz8uS9vUKNxcuMOM1ODnWjADW5rYhsqi rthmVGtUeAgC5Uljtg0BBNipfORC8IHk+pLxeSEH2Iih9IIHuHdUvc5QzKZUV5t+Aw 2+8f1biolwkrDf9jvrVNwdwVmK1dG9ql8WpwM0VzFKnWlbkHCTiuHhcOOheLsqfG9Y fORjogMxokZhQ== Date: Wed, 26 Feb 2020 15:22:26 +1100 From: Stephen Rothwell To: Arjun Roy Cc: davem@davemloft.net, akpm@linux-foundation.org, linux-mm@kvack.org, arjunroy@google.com, soheil@google.com, edumazet@google.com Subject: Re: [PATCH mm] mm: Bring sparc pte_index() semantics inline with other platforms. Message-ID: <20200226152226.3c25f5d9@canb.auug.org.au> In-Reply-To: <20200221211707.257960-1-arjunroy.kdev@gmail.com> References: <20200221211707.257960-1-arjunroy.kdev@gmail.com> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="Sig_/0jyUf568oe_HYdSJiSl5/Zp"; protocol="application/pgp-signature"; micalg=pgp-sha256 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000024, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: --Sig_/0jyUf568oe_HYdSJiSl5/Zp Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable Hi Arjun, On Fri, 21 Feb 2020 13:17:07 -0800 Arjun Roy wrot= e: > > From: Arjun Roy >=20 > pte_index() on platforms other than sparc return a numerical index. > On sparc, it returns a pte_t*. This presents an issue for > vm_insert_pages(), which relies on pte_index() to find the offset for > a pte within a pmd, for batched inserts. >=20 > This patch: > 1. Modifies pte_index() for sparc to return a numerical index, like > other platforms, > 2. Defines pte_entry() for sparc which returns a pte_t* > (as pte_index() used to), I wonder if you should not just make pte_offset_kernel() do what the old pte_index() did (this seems to align with what other arches do) and then make pte_offset_map() be defined to be pte_offset_kernel. > -#define pte_index(dir, address) \ > - ((pte_t *) __pmd_page(*(dir)) + \ > - ((address >> PAGE_SHIFT) & (PTRS_PER_PTE - 1))) > -#define pte_offset_kernel pte_index > -#define pte_offset_map pte_index > +#define pte_index(address) \ > + ((address >> PAGE_SHIFT) & (PTRS_PER_PTE - 1)) > +#define pte_entry(dir, address) \ > + ((pte_t *) __pmd_page(*(dir)) + pte_index(address)) > +#define pte_offset_kernel pte_entry > +#define pte_offset_map pte_entry #define pte_offset_kernel(dir, address) \ ((pte_t *) __pmd_page(*(dir)) + pte_index(address)) #define pte_offset_map(dir, address) pte_offset_kernel((dir), (address)) --=20 Cheers, Stephen Rothwell --Sig_/0jyUf568oe_HYdSJiSl5/Zp Content-Type: application/pgp-signature Content-Description: OpenPGP digital signature -----BEGIN PGP SIGNATURE----- iQEzBAEBCAAdFiEENIC96giZ81tWdLgKAVBC80lX0GwFAl5V8oIACgkQAVBC80lX 0GxrAAgAi/9ABfM5idSIVXYhfjYyVVZomyOh6lnmdhOLja1WuZ3dEDaJtjHKk4Un qwwGjpxwf2g+Q5aWm9igWcSZV2ISSGRzjAFtJAPx49RAWTEMpZ3T7a7WP25zecmI FnnyHrt5RX7aLAqTfnEqRNQy6kJLI//wTV3xxBx42Hywhco53EZUs2+sBdfj263k zD7T2L+zadlOgT4fwgMAItX8fe0ki//i/hbyoAtS+W+XcOOItRQcXEjO5P4KrNPX yKBJ8+oLla76J6Vpf5Y8u71YSF1Irn7S16j3aUpM2N8J7lsLCPuNC6WUQCDJ0mOw eowzivFHV5DGHXvYclVYwPWM4VK+cQ== =H+ya -----END PGP SIGNATURE----- --Sig_/0jyUf568oe_HYdSJiSl5/Zp--