public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
To: Christoph Lameter <clameter@sgi.com>
Cc: Jeremy Fitzhardinge <jeremy@goop.org>,
	Suresh Siddha <suresh.b.siddha@intel.com>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	Ingo Molnar <mingo@elte.hu>, Andi Kleen <ak@suse.de>,
	Tony Luck <tony.luck@intel.com>,
	Asit Mallick <asit.k.mallick@intel.com>,
	Andrew Morton <akpm@linux-foundation.org>
Subject: Re: What was the problem with quicklists and x86-64?
Date: Fri, 14 Dec 2007 08:03:08 +1100	[thread overview]
Message-ID: <1197579788.15741.172.camel@pasglop> (raw)
In-Reply-To: <Pine.LNX.4.64.0712131251300.18314@schroedinger.engr.sgi.com>


On Thu, 2007-12-13 at 12:53 -0800, Christoph Lameter wrote:
> On Fri, 14 Dec 2007, Benjamin Herrenschmidt wrote:
> 
> > > These issues only exist with NUMA because of the freeing of off node pages 
> > > before the TLB flush was done. There was a discussion about this issue and 
> > > my fix of simply not freeing the offnode pages early was ignored. Instead 
> > > the x86_64 implementation (which has no problems that I know of) was 
> > > pulled leaving the issue open in the core. Benjamin Herrrenschmidt 
> > > wanted to take a look at these issues (CCing him).
> > 
> > I don't know how NUMA gets in the picture there, it's probably very x86
> > specific thing. The issue we have here happens on other platforms
> > unrelated to NUMA. The fact that is tired to NUMA on x86 might be due to
> > the way the HW tablewalk operates on these. 
> 
> This is a generic NUMA issue here! Quicklist pages that are not on 
> the current node are freed without waiting for the TLB flush. The patch 
> that I posted fixes that by requiring that all pages be flushed. 

Ah ok, so that's a NUMA issue due to how the quicklists are implemented,
I see. Note that the flush isn't necessary a solution on all platforms.
On powerpc, I -still- need to defer with RCU as we don't do anything in
flush tlb. Our TLB invalidations are HW broadcast in the first place,
but what we need to sync with is the SW hash reload code.

So your solution in the quicklists doesn't solve the problem for us.

Ben.



  reply	other threads:[~2007-12-13 21:04 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-12-12 19:14 What was the problem with quicklists and x86-64? Jeremy Fitzhardinge
2007-12-13 19:47 ` Christoph Lameter
2007-12-13 20:47   ` Benjamin Herrenschmidt
2007-12-13 20:53     ` Christoph Lameter
2007-12-13 21:03       ` Benjamin Herrenschmidt [this message]
2007-12-13 21:33         ` Christoph Lameter
2007-12-13 22:27           ` Benjamin Herrenschmidt
2007-12-13 22:36             ` Christoph Lameter
2007-12-13 23:10               ` Benjamin Herrenschmidt
2007-12-13 23:14                 ` Christoph Lameter
2007-12-13 23:19                   ` Benjamin Herrenschmidt
2007-12-13 22:27   ` Siddha, Suresh B
2007-12-13 22:52     ` Christoph Lameter
2007-12-13 20:54 ` Siddha, Suresh B

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=1197579788.15741.172.camel@pasglop \
    --to=benh@kernel.crashing.org \
    --cc=ak@suse.de \
    --cc=akpm@linux-foundation.org \
    --cc=asit.k.mallick@intel.com \
    --cc=clameter@sgi.com \
    --cc=jeremy@goop.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=suresh.b.siddha@intel.com \
    --cc=tony.luck@intel.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