Re: [RFC/PATCH] mm: Pass virtual address to [__]p{te, ud, md}_free_tlb()

2009-07-27 Thread Paul Mundt
On Tue, Jul 28, 2009 at 10:17:40AM +1000, Benjamin Herrenschmidt wrote: > On Mon, 2009-07-27 at 12:11 -0700, Linus Torvalds wrote: > > On Thu, 23 Jul 2009, Benjamin Herrenschmidt wrote: > > > > > > Hrm... my powerpc-next branch will contain stuff that depend on it, so > > > I'll probably have to p

Re: [RFC/PATCH] mm: Pass virtual address to [__]p{te,ud,md}_free_tlb()

2009-07-27 Thread Linus Torvalds
On Tue, 28 Jul 2009, Paul Mundt wrote: > > Yup, that seems to be what happened. I've never seen a warning about this > with any compiler version, otherwise we would have caught this much > earlier. As soon as the addr -> a rename took place it blew up > immediately as a redefinition. Is there a m

Re: [RFC/PATCH] mm: Pass virtual address to [__]p{te,ud,md}_free_tlb()

2009-07-27 Thread Benjamin Herrenschmidt
On Mon, 2009-07-27 at 12:11 -0700, Linus Torvalds wrote: > > On Thu, 23 Jul 2009, Benjamin Herrenschmidt wrote: > > > > Hrm... my powerpc-next branch will contain stuff that depend on it, so > > I'll probably have to pull it in though, unless I tell all my > > sub-maintainers to also pull from th

Re: [RFC/PATCH] mm: Pass virtual address to [__]p{te,ud,md}_free_tlb()

2009-07-27 Thread Benjamin Herrenschmidt
On Mon, 2009-07-27 at 12:11 -0700, Linus Torvalds wrote: > > On Thu, 23 Jul 2009, Benjamin Herrenschmidt wrote: > > > > Hrm... my powerpc-next branch will contain stuff that depend on it, so > > I'll probably have to pull it in though, unless I tell all my > > sub-maintainers to also pull from th

Re: [RFC/PATCH] mm: Pass virtual address to [__]p{te,ud,md}_free_tlb()

2009-07-27 Thread Linus Torvalds
On Thu, 23 Jul 2009, Benjamin Herrenschmidt wrote: > > Hrm... my powerpc-next branch will contain stuff that depend on it, so > I'll probably have to pull it in though, unless I tell all my > sub-maintainers to also pull from that other branch first :-) Ok, I'll just apply the patch. It does lo

Re: [RFC/PATCH] mm: Pass virtual address to [__]p{te, ud, md}_free_tlb()

2009-07-22 Thread Kumar Gala
On Jul 22, 2009, at 7:53 PM, Benjamin Herrenschmidt wrote: On Wed, 2009-07-22 at 09:31 -0700, Linus Torvalds wrote: CC'ing Linus here. How do you want to proceed with that merge ? (IE. so far nobody objected to the patch itself) Maybe you can put it as a separate branch in -next, and have

Re: [RFC/PATCH] mm: Pass virtual address to [__]p{te,ud,md}_free_tlb()

2009-07-22 Thread Benjamin Herrenschmidt
On Wed, 2009-07-22 at 09:31 -0700, Linus Torvalds wrote: > > CC'ing Linus here. How do you want to proceed with that merge ? (IE. so > > far nobody objected to the patch itself) > > Maybe you can put it as a separate branch in -next, and have it merged > before the stuff that depends on it, and t

Re: [RFC/PATCH] mm: Pass virtual address to [__]p{te,ud,md}_free_tlb()

2009-07-22 Thread Linus Torvalds
On Mon, 20 Jul 2009, Benjamin Herrenschmidt wrote: > On Wed, 2009-07-15 at 15:56 +0200, Nick Piggin wrote: > > > I would like to merge the new support that depends on this in 2.6.32, > > > so unless there's major objections, I'd like this to go in early during > > > the merge window. We can sort

Re: [RFC/PATCH] mm: Pass virtual address to [__]p{te, ud, md}_free_tlb()

2009-07-21 Thread Nick Piggin
On Tue, Jul 21, 2009 at 10:02:26AM +1000, Benjamin Herrenschmidt wrote: > On Mon, 2009-07-20 at 12:38 +0200, Nick Piggin wrote: > > On Mon, Jul 20, 2009 at 08:00:41PM +1000, Benjamin Herrenschmidt wrote: > > > On Mon, 2009-07-20 at 10:10 +0200, Nick Piggin wrote: > > > > > > > > Maybe I don't unde

Re: [RFC/PATCH] mm: Pass virtual address to [__]p{te,ud,md}_free_tlb()

2009-07-20 Thread Benjamin Herrenschmidt
On Mon, 2009-07-20 at 12:38 +0200, Nick Piggin wrote: > On Mon, Jul 20, 2009 at 08:00:41PM +1000, Benjamin Herrenschmidt wrote: > > On Mon, 2009-07-20 at 10:10 +0200, Nick Piggin wrote: > > > > > > Maybe I don't understand your description correctly. The TLB contains > > > PMDs, but you say the HW

Re: [RFC/PATCH] mm: Pass virtual address to [__]p{te, ud, md}_free_tlb()

2009-07-20 Thread David Howells
Benjamin Herrenschmidt wrote: > Upcoming paches to support the new 64-bit "BookE" powerpc architecture > will need to have the virtual address corresponding to PTE page when > freeing it, due to the way the HW table walker works. > > Basically, the TLB can be loaded with "large" pages that cover

Re: [RFC/PATCH] mm: Pass virtual address to [__]p{te, ud, md}_free_tlb()

2009-07-20 Thread Nick Piggin
On Mon, Jul 20, 2009 at 07:59:21PM +1000, Benjamin Herrenschmidt wrote: > On Mon, 2009-07-20 at 10:05 +0200, Nick Piggin wrote: > > > > Unless anybody has other preferences, just send it straight to Linus in > > the next merge window -- if any conflicts did come up anyway they would > > be trivial

Re: [RFC/PATCH] mm: Pass virtual address to [__]p{te, ud, md}_free_tlb()

2009-07-20 Thread Nick Piggin
On Mon, Jul 20, 2009 at 08:00:41PM +1000, Benjamin Herrenschmidt wrote: > On Mon, 2009-07-20 at 10:10 +0200, Nick Piggin wrote: > > > > Maybe I don't understand your description correctly. The TLB contains > > PMDs, but you say the HW still logically performs another translation > > step using ent

Re: [RFC/PATCH] mm: Pass virtual address to [__]p{te,ud,md}_free_tlb()

2009-07-20 Thread Benjamin Herrenschmidt
On Mon, 2009-07-20 at 10:10 +0200, Nick Piggin wrote: > > Maybe I don't understand your description correctly. The TLB contains > PMDs, but you say the HW still logically performs another translation > step using entries in the PMD pages? If I understand that correctly, > then generic mm does not

Re: [RFC/PATCH] mm: Pass virtual address to [__]p{te,ud,md}_free_tlb()

2009-07-20 Thread Benjamin Herrenschmidt
On Mon, 2009-07-20 at 10:05 +0200, Nick Piggin wrote: > > Unless anybody has other preferences, just send it straight to Linus in > the next merge window -- if any conflicts did come up anyway they would > be trivial. You could just check against linux-next before doing so, and > should see if it

Re: [RFC/PATCH] mm: Pass virtual address to [__]p{te, ud, md}_free_tlb()

2009-07-20 Thread Nick Piggin
On Thu, Jul 16, 2009 at 11:54:15AM +1000, Benjamin Herrenschmidt wrote: > On Wed, 2009-07-15 at 15:56 +0200, Nick Piggin wrote: > > Interesting arrangement. So are these last level ptes modifieable > > from userspace or something? If not, I wonder if you could manage > > them as another level of po

Re: [RFC/PATCH] mm: Pass virtual address to [__]p{te, ud, md}_free_tlb()

2009-07-20 Thread Nick Piggin
On Mon, Jul 20, 2009 at 05:11:13PM +1000, Benjamin Herrenschmidt wrote: > On Wed, 2009-07-15 at 15:56 +0200, Nick Piggin wrote: > > > I would like to merge the new support that depends on this in 2.6.32, > > > so unless there's major objections, I'd like this to go in early during > > > the merge w

Re: [RFC/PATCH] mm: Pass virtual address to [__]p{te,ud,md}_free_tlb()

2009-07-20 Thread Martin Schwidefsky
On Mon, 20 Jul 2009 17:11:13 +1000 Benjamin Herrenschmidt wrote: > On Wed, 2009-07-15 at 15:56 +0200, Nick Piggin wrote: > > > I would like to merge the new support that depends on this in 2.6.32, > > > so unless there's major objections, I'd like this to go in early during > > > the merge window

Re: [RFC/PATCH] mm: Pass virtual address to [__]p{te,ud,md}_free_tlb()

2009-07-20 Thread Benjamin Herrenschmidt
On Wed, 2009-07-15 at 15:56 +0200, Nick Piggin wrote: > > I would like to merge the new support that depends on this in 2.6.32, > > so unless there's major objections, I'd like this to go in early during > > the merge window. We can sort out separately how to carry the patch > > around in -next unt

Re: [RFC/PATCH] mm: Pass virtual address to [__]p{te,ud,md}_free_tlb()

2009-07-15 Thread Benjamin Herrenschmidt
On Thu, 2009-07-16 at 11:36 +1000, Michael Ellerman wrote: > > Builds for the important architectures, powerpc, ia64, arm, sparc, > sparc64, oh and x86: > > http://kisskb.ellerman.id.au/kisskb/head/1976/ > > (based on your test branch 34f25476) Note for all lurkers: the fails in there are unrel

Re: [RFC/PATCH] mm: Pass virtual address to [__]p{te,ud,md}_free_tlb()

2009-07-15 Thread Benjamin Herrenschmidt
On Wed, 2009-07-15 at 15:56 +0200, Nick Piggin wrote: > On Wed, Jul 15, 2009 at 05:49:47PM +1000, Benjamin Herrenschmidt wrote: > > Upcoming paches to support the new 64-bit "BookE" powerpc architecture > > will need to have the virtual address corresponding to PTE page when > > freeing it, due to

Re: [RFC/PATCH] mm: Pass virtual address to [__]p{te,ud,md}_free_tlb()

2009-07-15 Thread Michael Ellerman
On Wed, 2009-07-15 at 17:49 +1000, Benjamin Herrenschmidt wrote: > Upcoming paches to support the new 64-bit "BookE" powerpc architecture > will need to have the virtual address corresponding to PTE page when > freeing it, due to the way the HW table walker works. > I haven't had a chance to test

Re: [RFC/PATCH] mm: Pass virtual address to [__]p{te, ud, md}_free_tlb()

2009-07-15 Thread Nick Piggin
On Wed, Jul 15, 2009 at 05:49:47PM +1000, Benjamin Herrenschmidt wrote: > Upcoming paches to support the new 64-bit "BookE" powerpc architecture > will need to have the virtual address corresponding to PTE page when > freeing it, due to the way the HW table walker works. > > Basically, the TLB can

[RFC/PATCH] mm: Pass virtual address to [__]p{te,ud,md}_free_tlb()

2009-07-15 Thread Benjamin Herrenschmidt
Upcoming paches to support the new 64-bit "BookE" powerpc architecture will need to have the virtual address corresponding to PTE page when freeing it, due to the way the HW table walker works. Basically, the TLB can be loaded with "large" pages that cover the whole virtual space (well, sort-of, h