Re: What was the problem with quicklists and x86-64?

2007-12-13 Thread Benjamin Herrenschmidt
On Thu, 2007-12-13 at 15:14 -0800, Christoph Lameter wrote: > On Fri, 14 Dec 2007, Benjamin Herrenschmidt wrote: > > > We have a separate batch to store page table pages with an RCU head on > > it, we fire it off when it's full or when tlb gather is complete. > > full? You need to wait otill the

Re: What was the problem with quicklists and x86-64?

2007-12-13 Thread Christoph Lameter
On Fri, 14 Dec 2007, Benjamin Herrenschmidt wrote: > We have a separate batch to store page table pages with an RCU head on > it, we fire it off when it's full or when tlb gather is complete. full? You need to wait otill the tlb gather is complete. -- To unsubscribe from this list: send the line

Re: What was the problem with quicklists and x86-64?

2007-12-13 Thread Benjamin Herrenschmidt
On Thu, 2007-12-13 at 14:36 -0800, Christoph Lameter wrote: > On Fri, 14 Dec 2007, Benjamin Herrenschmidt wrote: > > > > No this may mean that the problem does not exist on powerpc since it > > > seems to be okay to free pages before all processors have flushed the > > > TLBs? Or are you deferr

Re: What was the problem with quicklists and x86-64?

2007-12-13 Thread Christoph Lameter
On Thu, 13 Dec 2007, Siddha, Suresh B wrote: > > Oh, and I see what's wrong: you not only switched "free_page()" to > "quicklist_free()", you *also* switched "tlb_remove_page()" to > "quicklist_free()". > > > The above comment is in reference to below portion of code: > > -#define __pte_free

Re: What was the problem with quicklists and x86-64?

2007-12-13 Thread Christoph Lameter
On Fri, 14 Dec 2007, Benjamin Herrenschmidt wrote: > > No this may mean that the problem does not exist on powerpc since it > > seems to be okay to free pages before all processors have flushed the > > TLBs? Or are you deferrring the freeing of the pages via RCU? > > I'm deferring the freeing w

Re: What was the problem with quicklists and x86-64?

2007-12-13 Thread Siddha, Suresh B
On Thu, Dec 13, 2007 at 11:47:29AM -0800, Christoph Lameter wrote: > On Wed, 12 Dec 2007, Jeremy Fitzhardinge wrote: > > > I'm looking at unifying the various pgalloc+pgd_lists mechanisms between > > 32-bit (PAE and non-PAE) and 64-bit, so I'm trying to understand why > > these differences exist i

Re: What was the problem with quicklists and x86-64?

2007-12-13 Thread Benjamin Herrenschmidt
On Thu, 2007-12-13 at 13:33 -0800, Christoph Lameter wrote: > > > > 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 > i

Re: What was the problem with quicklists and x86-64?

2007-12-13 Thread Christoph Lameter
On Fri, 14 Dec 2007, Benjamin Herrenschmidt wrote: > > 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

Re: What was the problem with quicklists and x86-64?

2007-12-13 Thread Benjamin Herrenschmidt
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 > >

Re: What was the problem with quicklists and x86-64?

2007-12-13 Thread Siddha, Suresh B
On Wed, Dec 12, 2007 at 11:14:41AM -0800, Jeremy Fitzhardinge wrote: > I'm looking at unifying the various pgalloc+pgd_lists mechanisms between > 32-bit (PAE and non-PAE) and 64-bit, so I'm trying to understand why > these differences exist in the first place. > > Change da8f153e51290e7438ba7da662

Re: What was the problem with quicklists and x86-64?

2007-12-13 Thread Christoph Lameter
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

Re: What was the problem with quicklists and x86-64?

2007-12-13 Thread Benjamin Herrenschmidt
On Thu, 2007-12-13 at 11:47 -0800, Christoph Lameter wrote: > On Wed, 12 Dec 2007, Jeremy Fitzhardinge wrote: > > > I'm looking at unifying the various pgalloc+pgd_lists mechanisms between > > 32-bit (PAE and non-PAE) and 64-bit, so I'm trying to understand why > > these differences exist in the

Re: What was the problem with quicklists and x86-64?

2007-12-13 Thread Christoph Lameter
On Wed, 12 Dec 2007, Jeremy Fitzhardinge wrote: > I'm looking at unifying the various pgalloc+pgd_lists mechanisms between > 32-bit (PAE and non-PAE) and 64-bit, so I'm trying to understand why > these differences exist in the first place. > > Change da8f153e51290e7438ba7da66234a864e5d3e1c1 rever

What was the problem with quicklists and x86-64?

2007-12-12 Thread Jeremy Fitzhardinge
I'm looking at unifying the various pgalloc+pgd_lists mechanisms between 32-bit (PAE and non-PAE) and 64-bit, so I'm trying to understand why these differences exist in the first place. Change da8f153e51290e7438ba7da66234a864e5d3e1c1 reverted the use of quicklists for allocating pagetables, becaus