Generic Linux architectural discussions
 help / color / mirror / Atom feed
From: Andrew Morton <akpm@linux-foundation.org>
To: Dave Hansen <dave.hansen@intel.com>
Cc: Peter Zijlstra <peterz@infradead.org>,
	Lance Yang <lance.yang@linux.dev>,
	david@kernel.org, dave.hansen@linux.intel.com,
	ypodemsk@redhat.com, hughd@google.com, will@kernel.org,
	aneesh.kumar@kernel.org, npiggin@gmail.com, tglx@linutronix.de,
	mingo@redhat.com, bp@alien8.de, x86@kernel.org, hpa@zytor.com,
	arnd@arndb.de, ljs@kernel.org, ziy@nvidia.com,
	baolin.wang@linux.alibaba.com, Liam.Howlett@oracle.com,
	npache@redhat.com, ryan.roberts@arm.com, dev.jain@arm.com,
	baohua@kernel.org, shy828301@gmail.com, riel@surriel.com,
	jannh@google.com, jgross@suse.com, seanjc@google.com,
	pbonzini@redhat.com, boris.ostrovsky@oracle.com,
	virtualization@lists.linux.dev, kvm@vger.kernel.org,
	linux-arch@vger.kernel.org, linux-mm@kvack.org,
	linux-kernel@vger.kernel.org, ioworker0@gmail.com
Subject: Re: [PATCH 7.2 v10 1/2] mm/mmu_gather: prepare to skip redundant sync IPIs
Date: Tue, 26 May 2026 18:44:17 -0700	[thread overview]
Message-ID: <20260526184417.a4de7beb76bce85d7597b676@linux-foundation.org> (raw)
In-Reply-To: <f437455d-1598-483d-9dcf-1932d265ef3f@intel.com>

On Fri, 24 Apr 2026 08:52:16 -0700 Dave Hansen <dave.hansen@intel.com> wrote:

> On 4/24/26 08:04, Peter Zijlstra wrote:
> > So I don't like this at all.... The comment says there is a preceding
> > TLB flush, but there is nothing that guarantees there is. One would have
> > to go audit all users and ensure this is always true.
> > 
> > This thing is incredibly fragile.
> 
> Yeah, this seems like an attempt to apply a code solution to a data
> structure problem.
> 
> I think I talked about this in earlier iterations. But, ideally, what
> happens here is that the things doing the table freeing or collapsing or
> whatever would note in a data structure what they did.
> 
> Then the actual flushing code can look at the data structure and figure
> out what kind of flush it needs. Things like "do I need to flush on lazy
> CPUs?" Or, "have I done an IPI since the last page table free?"
> 
> But, if I remember from earlier in this thread, some of the callers of
> this stuff didn't have a nice data structure (like an mmu_gather) passed
> in to the places where it would be needed to exfiltrate the information.
> 
> I think Lance gave up on that because it looked too invasive to him.
> 
> But, I think this boils down to the code being too fragile as-is to
> support what Lance is trying to do. It actually needs some refactoring
> love before it can support the desired optimization. I'm not sure
> there's an easy way out here.

Well this is a bummer.  Looky:

> On a 64-core Intel x86 server, the CAL interrupt count in
> /proc/interrupts dropped from 646,316 to 785 when collapsing a 20 GiB
> range with this series applied.

It would have been nice.

Oh well, it's been a month with no progress so this patchset appears to
be before its time.  Thanks all, I'll drop this from the 7.1 queue.

(otoh, "a month with no progress" == "decently tested")!


  reply	other threads:[~2026-05-27  1:44 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-04-24  6:25 [PATCH 7.2 v10 0/2] skip redundant sync IPIs when TLB flush sent them Lance Yang
2026-04-24  6:25 ` [PATCH 7.2 v10 1/2] mm/mmu_gather: prepare to skip redundant sync IPIs Lance Yang
2026-04-24 15:04   ` Peter Zijlstra
2026-04-24 15:52     ` Dave Hansen
2026-05-27  1:44       ` Andrew Morton [this message]
2026-04-24 15:40   ` Lance Yang
2026-04-24  6:25 ` [PATCH 7.2 v10 2/2] x86/tlb: skip redundant sync IPIs for native TLB flush Lance Yang
2026-04-24 15:12   ` Peter Zijlstra
2026-04-24 15:49     ` Lance Yang
2026-04-24 13:30 ` [PATCH 7.2 v10 0/2] skip redundant sync IPIs when TLB flush sent them Andrew Morton
2026-04-24 13:37   ` Pasha Tatashin
2026-04-24 14:15     ` Andrew Morton
2026-04-24 14:20       ` David Hildenbrand (Arm)
2026-04-24 14:31         ` Andrew Morton
2026-04-24 14:40           ` Pasha Tatashin
2026-04-24 18:36           ` David Hildenbrand (Arm)
2026-04-24 18:50             ` Yosry Ahmed
2026-04-24 19:01               ` Peter Zijlstra
2026-04-24 19:12                 ` Zi Yan
2026-04-24 19:15                   ` Yosry Ahmed
2026-04-25  0:58                     ` SeongJae Park
2026-04-24 19:22                   ` Peter Zijlstra
2026-04-24 19:35                     ` Peter Zijlstra
2026-04-24 20:03                       ` Roman Gushchin
2026-04-24 20:11                         ` Peter Zijlstra
2026-05-29 11:10                           ` Peter Zijlstra
2026-04-24 19:08               ` Andrew Morton
2026-04-24 19:09               ` David Hildenbrand (Arm)
2026-04-24 19:17                 ` Peter Zijlstra
2026-04-24 19:24                   ` David Hildenbrand (Arm)
2026-04-24 19:18                 ` Yosry Ahmed
2026-04-25  1:12                   ` SeongJae Park
2026-04-25  5:17                   ` David Hildenbrand (Arm)
2026-04-25 11:36                     ` Andrew Morton
2026-04-27  8:53                       ` David Hildenbrand (Arm)
2026-04-25  1:19           ` SeongJae Park

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=20260526184417.a4de7beb76bce85d7597b676@linux-foundation.org \
    --to=akpm@linux-foundation.org \
    --cc=Liam.Howlett@oracle.com \
    --cc=aneesh.kumar@kernel.org \
    --cc=arnd@arndb.de \
    --cc=baohua@kernel.org \
    --cc=baolin.wang@linux.alibaba.com \
    --cc=boris.ostrovsky@oracle.com \
    --cc=bp@alien8.de \
    --cc=dave.hansen@intel.com \
    --cc=dave.hansen@linux.intel.com \
    --cc=david@kernel.org \
    --cc=dev.jain@arm.com \
    --cc=hpa@zytor.com \
    --cc=hughd@google.com \
    --cc=ioworker0@gmail.com \
    --cc=jannh@google.com \
    --cc=jgross@suse.com \
    --cc=kvm@vger.kernel.org \
    --cc=lance.yang@linux.dev \
    --cc=linux-arch@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=ljs@kernel.org \
    --cc=mingo@redhat.com \
    --cc=npache@redhat.com \
    --cc=npiggin@gmail.com \
    --cc=pbonzini@redhat.com \
    --cc=peterz@infradead.org \
    --cc=riel@surriel.com \
    --cc=ryan.roberts@arm.com \
    --cc=seanjc@google.com \
    --cc=shy828301@gmail.com \
    --cc=tglx@linutronix.de \
    --cc=virtualization@lists.linux.dev \
    --cc=will@kernel.org \
    --cc=x86@kernel.org \
    --cc=ypodemsk@redhat.com \
    --cc=ziy@nvidia.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