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 Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id D64F7C4828F for ; Thu, 8 Feb 2024 17:34:46 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 6D0F76B0088; Thu, 8 Feb 2024 12:34:46 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 65A486B0089; Thu, 8 Feb 2024 12:34:46 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 4D47D6B008A; Thu, 8 Feb 2024 12:34:46 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id 37D5B6B0088 for ; Thu, 8 Feb 2024 12:34:46 -0500 (EST) Received: from smtpin01.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id C5EB140423 for ; Thu, 8 Feb 2024 17:34:45 +0000 (UTC) X-FDA: 81769336530.01.143E149 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by imf14.hostedemail.com (Postfix) with ESMTP id CA33E100024 for ; Thu, 8 Feb 2024 17:34:43 +0000 (UTC) Authentication-Results: imf14.hostedemail.com; dkim=none; spf=pass (imf14.hostedemail.com: domain of mark.rutland@arm.com designates 217.140.110.172 as permitted sender) smtp.mailfrom=mark.rutland@arm.com; dmarc=pass (policy=none) header.from=arm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1707413684; a=rsa-sha256; cv=none; b=EMjHXIou8L6v5VDnEzPmNEbmy8uCTWhlRpFl/84B2pqZomeip11Rqzs2wADazZGkDRnHMF Y4xsIyJyL1CXH4OA23N1biSKZ7b8pX4Khue2FigDl6pUEhYOZlPaOCtQok7wNpi00rOLDq ChoIDVDsnNVZAkEVqKWiZwtBSAc+TUY= ARC-Authentication-Results: i=1; imf14.hostedemail.com; dkim=none; spf=pass (imf14.hostedemail.com: domain of mark.rutland@arm.com designates 217.140.110.172 as permitted sender) smtp.mailfrom=mark.rutland@arm.com; dmarc=pass (policy=none) header.from=arm.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1707413684; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=kmhjxae2VO2cQEiYP9uCiANsRZAe4Dpdcj6/2eIBofk=; b=0dqi4fmxWNCxZ3ctkB2aLhXwdeEyUAhDbcbZVIAnHeDgaLFiQoSjLHM57UKXgTEwvdcJPS Gfm+yF7YiRpSE8qMf7VDzwzqTC7jS2ZPCXU+s5hRwx+xDFE+JJhq8vRoN4qItgt1HRc+qr hrtzaw6DB/krn/gHA/EIop0r84BfiG4= Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id EC798DA7; Thu, 8 Feb 2024 09:35:24 -0800 (PST) Received: from FVFF77S0Q05N.cambridge.arm.com (FVFF77S0Q05N.cambridge.arm.com [10.1.33.184]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id E6E443F64C; Thu, 8 Feb 2024 09:34:38 -0800 (PST) Date: Thu, 8 Feb 2024 17:34:33 +0000 From: Mark Rutland To: Ryan Roberts Cc: Catalin Marinas , Will Deacon , Ard Biesheuvel , Marc Zyngier , James Morse , Andrey Ryabinin , Andrew Morton , Matthew Wilcox , David Hildenbrand , Kefeng Wang , John Hubbard , Zi Yan , Barry Song <21cnbao@gmail.com>, Alistair Popple , Yang Shi , Nicholas Piggin , Christophe Leroy , "Aneesh Kumar K.V" , "Naveen N. Rao" , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "H. Peter Anvin" , linux-arm-kernel@lists.infradead.org, x86@kernel.org, linuxppc-dev@lists.ozlabs.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v5 00/25] Transparent Contiguous PTEs for User Mappings Message-ID: References: <20240202080756.1453939-1-ryan.roberts@arm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20240202080756.1453939-1-ryan.roberts@arm.com> X-Rspam-User: X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: CA33E100024 X-Stat-Signature: azbcsifrjhw759af91d7sapjmjhs9oz8 X-HE-Tag: 1707413683-506588 X-HE-Meta: U2FsdGVkX18vIAgD7NBsSHC0L08zZSQEzUCcKUJY1EkQM2gXi4cnA0KVlhoiIaLQEwqG0OVdWgUh6LmWwm490+uMpXL4EOFgRA2wRFrZ1L0ip6j4V3YNNwLxAx0V5TAweFqJFd/EMiMiH8BQ3KC38E7F6Evsijd6Gd0OU7uM4zGbkgxERQpKAZ0lrZ+WnyOJG+kEJ8ZNVQXnovYDpw9I6swyVKAmeUDrrXS/32x9pl8mmmYEitdNdiS9p11mMKWFzzKi4IwixzlgzUFtV4aZYvruKTtls0apiHLImfCRhORXfHj98JqEEs8p9MpxDH6P5trMNYcKAV4aYgU9QLox/xvsUS+28jv0CtUNz2E3G0w+oC6qz/774DDjpbcif7jiqeblTL1Wg0uEeDoeZgVuwtRhjkRnhIHjtBDhOCdiH5qbQohchelt0yjZ2HlWziSqTVJL05IQhBRwgGLfzhtyiyK6K0mZmo0PQxcAMIOrSSSyjzdTMub+T+QMt37GtMUyBI+eVNPuHEDNjfybZPqLv+HPcvKM40E/tCaVPt9rrhdUHOYibLTsLGAxk04QR/TfSpq8jK+BdxLY4RuXMYIzevROgYBAw8UJclJKkymXi6rfI8Ly/hJyoBToGaBjuGrgcmx6pAMnIYgZePpVzApKoqYaPtmUjnfZ4kl+reQcB71v3tpz3cvYHV1Zj9F5cT9/qJV+uFW6m3YaI85dtkMf5f4LeVKsQq6DKQGV/hFt046d5HH/hOXR2wVimT9Iea0wt3k3T7+NUwstj59amId241fZTnhhyuPCJPJUfgB32lBdYSh2/skIB1A2vEFgjivmgHbtz8aVPWyMtlUZX72HVZrzZ4psN57Z2GgG0mFCN1FkTa1vNBA4tF3dmfWJPY7eJelpwJ/tZh/U0SQbPlopaVPBIzWr8RgkMcFHoKmuP+My/qk4mztajfYbNGTJuhH5uqK1xWdqT8N7u0P9LkZ eIa6dBpt aF3l6AZiFCjOA2fTq5sv5vBYWg8r+lOEOIQsSISTpHsOiC5FAoJx7bVo4uqA5ZEe+BY4hc9xqvmXd4qv7jf4OGS3ZLrVlFhad9Wi449FMAMJCD34qEUGk5RYyGomxVHtKnI+bmIP0GMLkVx/OeNcZwQv+LXqNyQXuCBrMv96FlrN0XDbtts7mmDBsgiYuZEi2hirhVzpjEfsjAp2mlLrlLzKtlWi72PF2Q/DEoNCXJKq69YXP4mBizJ1IlDTLA8LkbuHD8fvLFEb+vZhd8qD7+CKkgKDAMKDXoxG5XPSn1zKBfEFuNji1k/T/abuZyQLd4q52+3+iqQuwFwk= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On Fri, Feb 02, 2024 at 08:07:31AM +0000, Ryan Roberts wrote: > Hi All, Hi Ryan, I assume this is the same as your 'features/granule_perf/contpte-lkml_v' branch on https://gitlab.arm.com/linux-arm/linux-rr/ I've taken a quick look, and I have a few initial/superficial comments before digging into the detail on the important changes. > Patch Layout > ============ > > In this version, I've split the patches to better show each optimization: > > - 1-2: mm prep: misc code and docs cleanups I'm not confident enough to comment on patch 2, but these look reasonable to me. > - 3-8: mm,arm,arm64,powerpc,x86 prep: Replace pte_next_pfn() with more > general pte_advance_pfn() These look fine to me. > - 9-18: arm64 prep: Refactor ptep helpers into new layer The result of patches 9-17 looks good to me, but the intermediate stages where some functions are converted is a bit odd, and it's a bit painful for review since you need to skip ahead a few patches to see the end result to tell that the conversions are consistent and complete. IMO it'd be easier for review if that were three patches: 1) Convert READ_ONCE() -> ptep_get() 2) Convert set_pte_at() -> set_ptes() 3) All the "New layer" renames and addition of the trivial wrappers Patch 18 looks fine to me. > - 19: functional contpte implementation > - 20-25: various optimizations on top of the contpte implementation I'll try to dig into these over the next few days. Mark.