The Linux Kernel Mailing List
 help / color / mirror / Atom feed
From: "Lorenzo Stoakes (ARM)" <ljs@kernel.org>
To: "Christoph Lameter (Ampere)" <cl@gentwo.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>,
	 "David Hildenbrand (Arm)" <david@kernel.org>,
	Mark Rutland <mark.rutland@arm.com>,
	 Yang Shi <yang@os.amperecomputing.com>,
	Ryan Roberts <ryan.roberts@arm.com>,
	dennis@kernel.org,  tj@kernel.org, urezki@gmail.com,
	catalin.marinas@arm.com, will@kernel.org,
	 akpm@linux-foundation.org, hca@linux.ibm.com, gor@linux.ibm.com,
	agordeev@linux.ibm.com,  linux-mm@kvack.org,
	linux-arm-kernel@lists.infradead.org,
	 linux-kernel@vger.kernel.org, Jason Gunthorpe <jgg@nvidia.com>
Subject: Re: [RFC v2 PATCH 0/16] Optimize this_cpu_*() ops for non-x86 (ARM64 for this series)
Date: Wed, 5 Aug 2026 09:16:30 +0100	[thread overview]
Message-ID: <anLr5Xd-sD7frihN@lucifer> (raw)
In-Reply-To: <8d6119c7-2216-fcdd-d0b9-cc60ccc8caf3@gentwo.org>

On Tue, Aug 04, 2026 at 02:40:27PM -0700, Christoph Lameter (Ampere) wrote:
> On Tue, 4 Aug 2026, Lorenzo Stoakes (ARM) wrote:
>
> > On Tue, Aug 04, 2026 at 10:01:45AM -0700, Linus Torvalds wrote:
> > > So I'm just trying to clarify my stance - I don't hate percpu TLB
> > > contents per se. I hate the notion of codifying them.
> >
> > I do worry that changing per-CPU data structures to support this is exactly
> > codifying this (and will encourage other arches to follow suit).
> >
> > And I really don't think there's any way to implement this without
> > fundamentally changing core mm or assumptions that core mm can make.
>
> Would it be possible to discuss the technical issues instead of throwing
> up this and that foggy objection? Lets not get into the complexities of

Christoph this is very unhelpful. I and other maintainers have raised
_specific_ and _technical_ objections. If you are having comprehension
issues it'd be more constructive to ask questions.

It's really simple - convince us or the series doesn't go upstream.

>
> The fundamental problem is that your patchset does
>
>
> <preeamble establishing restart point>
> RMV per cpu op
> <post handling cleaning up setup of restart point>
>
>
> What x86 does and what we can get ARM to do is:
>
> RMW per cpu op
> Why do you think that your solution that requires a complex restart
> mechanism is better?
>
>
> These are operations that are key to the performance in critical parts of
> memory management and this code is replicated by being inlined thousands
> of times in the kernel.

I mean this is just silly :)

Provide data to back any of this, and no your benchmarks of your approach
vs. nothing isn't it, nor do they demonstrate anything about what you claim
here.

You've been asked for this multiple times now.

(And please no hand waving about 'critical parts of mm'. Be specific
please.)

>
>

--
Cheers, Lorenzo

  parent reply	other threads:[~2026-08-05  8:16 UTC|newest]

Thread overview: 63+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-07-15 18:04 [RFC v2 PATCH 0/16] Optimize this_cpu_*() ops for non-x86 (ARM64 for this series) Yang Shi
2026-07-15 18:04 ` [PATCH 01/16] drivers: arch_numa: move percpu set up code to arch Yang Shi
2026-07-15 18:04 ` [PATCH 02/16] arm64: kconfig: make percpu related configs not depend on NUMA Yang Shi
2026-07-15 18:04 ` [PATCH 03/16] mm: pgalloc: introduce {pud|pmd}_populate_sync() Yang Shi
2026-07-15 18:04 ` [PATCH 04/16] vmalloc: pass in pgd pointer for vmap{__vunmap}_range_noflush() Yang Shi
2026-07-29  9:32   ` Lorenzo Stoakes (ARM)
2026-08-03 19:12     ` Yang Shi
2026-08-04 13:47       ` Lorenzo Stoakes (ARM)
2026-07-15 18:04 ` [PATCH 05/16] arm64: mm: enable percpu kernel page table Yang Shi
2026-07-15 18:04 ` [PATCH 06/16] arm64: mm: defined {pud|pmd}_populate_sync() Yang Shi
2026-07-15 18:04 ` [PATCH 07/16] arm64: mm: sync percpu page table for memory hotplug/unplug Yang Shi
2026-07-15 18:04 ` [PATCH 08/16] arm64: kasan: sync up kasan shadow area page table Yang Shi
2026-07-15 18:04 ` [PATCH 09/16] arm64: mm: define percpu virtual space area Yang Shi
2026-07-15 18:04 ` [PATCH 10/16] mm: percpu: prepare to use dedicated percpu area Yang Shi
2026-07-15 18:04 ` [PATCH 11/16] arm64: mm: map local percpu first chunk Yang Shi
2026-07-15 18:04 ` [PATCH 12/16] mm: percpu: set up first chunk and reserve chunk Yang Shi
2026-07-15 18:04 ` [PATCH 13/16] arm64: mm: introduce __per_cpu_local_off Yang Shi
2026-07-15 18:04 ` [PATCH 14/16] mm: percpu: allocate and free local percpu vm area Yang Shi
2026-07-15 18:04 ` [PATCH 15/16] arm64: kconfig: select HAVE_LOCAL_PER_CPU_MAP Yang Shi
2026-07-15 18:04 ` [PATCH 16/16] arm64: percpu: use local percpu for this_cpu_*() APIs Yang Shi
2026-07-16 13:23 ` [RFC v2 PATCH 0/16] Optimize this_cpu_*() ops for non-x86 (ARM64 for this series) Ryan Roberts
2026-07-21 19:08   ` Mark Rutland
2026-07-21 23:20   ` Yang Shi
2026-07-22  9:36     ` Mark Rutland
2026-07-27 21:10       ` Yang Shi
2026-07-27 22:06       ` Christoph Lameter (Ampere)
2026-07-29  9:28         ` David Hildenbrand (Arm)
2026-08-04 14:15           ` Lorenzo Stoakes (ARM)
2026-08-04 14:21             ` Lorenzo Stoakes (ARM)
2026-08-04 14:40               ` Jason Gunthorpe
2026-08-04 18:06                 ` Matthew Wilcox
2026-08-04 18:16                   ` Jason Gunthorpe
2026-08-04 15:21             ` Linus Torvalds
2026-08-04 16:15               ` Christoph Lameter (Ampere)
2026-08-04 16:30                 ` Linus Torvalds
2026-08-04 16:54                   ` David Hildenbrand (Arm)
2026-08-04 17:01                   ` Linus Torvalds
2026-08-04 17:32                     ` Lorenzo Stoakes (ARM)
2026-08-04 21:40                       ` Christoph Lameter (Ampere)
2026-08-04 21:48                         ` David Hildenbrand (Arm)
2026-08-04 21:56                           ` Christoph Lameter (Ampere)
2026-08-04 22:01                             ` David Hildenbrand (Arm)
2026-08-05  8:16                         ` Lorenzo Stoakes (ARM) [this message]
2026-08-04 17:23                   ` Lorenzo Stoakes (ARM)
2026-08-04 17:28                     ` Linus Torvalds
2026-08-04 21:51                     ` Yang Shi
2026-08-04 22:05                       ` David Hildenbrand (Arm)
2026-08-04 22:35                         ` Christoph Lameter (Ampere)
2026-08-05  6:11                           ` David Hildenbrand (Arm)
2026-08-05 14:48                           ` Mark Rutland
2026-08-05  7:52                       ` Lorenzo Stoakes (ARM)
2026-08-06 17:15                     ` Will Deacon
2026-08-06 17:31                       ` Lorenzo Stoakes (ARM)
2026-08-04 16:19             ` Christoph Lameter (Ampere)
2026-08-04 16:47               ` David Hildenbrand (Arm)
2026-08-04 21:25                 ` Christoph Lameter (Ampere)
2026-08-04 21:47                   ` David Hildenbrand (Arm)
2026-08-04 22:01                     ` Christoph Lameter (Ampere)
2026-08-05  6:12                       ` David Hildenbrand (Arm)
2026-08-05  8:45                     ` Heiko Carstens
2026-08-05 11:10                 ` David Laight
2026-08-05 14:53         ` Mark Rutland
2026-07-30  6:06     ` [RFC v2 PATCH 0/16] Optimize this_cpu_*() ops for non-x86 (ARM64 for this series)~ Mete Durlu

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=anLr5Xd-sD7frihN@lucifer \
    --to=ljs@kernel.org \
    --cc=agordeev@linux.ibm.com \
    --cc=akpm@linux-foundation.org \
    --cc=catalin.marinas@arm.com \
    --cc=cl@gentwo.org \
    --cc=david@kernel.org \
    --cc=dennis@kernel.org \
    --cc=gor@linux.ibm.com \
    --cc=hca@linux.ibm.com \
    --cc=jgg@nvidia.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=mark.rutland@arm.com \
    --cc=ryan.roberts@arm.com \
    --cc=tj@kernel.org \
    --cc=torvalds@linux-foundation.org \
    --cc=urezki@gmail.com \
    --cc=will@kernel.org \
    --cc=yang@os.amperecomputing.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox