Re: [PATCH 3/5] lib: lockless generic and arch independent page table (gpt) v2.

2014-11-13 Thread Linus Torvalds
On Thu, Nov 13, 2014 at 5:18 PM, Linus Torvalds wrote: > > More importantly, nobody should ever care. Because the whole *point* > of the tree walker is that the user never sees any of this. This is > purely an implementation detail of the tree itself. Somebody who just > *walks* the tree only sees

Re: [PATCH 3/5] lib: lockless generic and arch independent page table (gpt) v2.

2014-11-13 Thread Linus Torvalds
On Thu, Nov 13, 2014 at 4:58 PM, Kirill A. Shutemov wrote: > On Thu, Nov 13, 2014 at 03:50:02PM -0800, Linus Torvalds wrote: >> +/* >> + * The 'tree_level' data only describes one particular level >> + * of the tree. The upper levels are totally invisible to the >> + * user of the tree walker, sin

Re: [PATCH 3/5] lib: lockless generic and arch independent page table (gpt) v2.

2014-11-13 Thread Kirill A. Shutemov
On Thu, Nov 13, 2014 at 03:50:02PM -0800, Linus Torvalds wrote: > +/* > + * The 'tree_level' data only describes one particular level > + * of the tree. The upper levels are totally invisible to the > + * user of the tree walker, since the tree walker will walk > + * those using the tree definition

Re: [PATCH 3/5] lib: lockless generic and arch independent page table (gpt) v2.

2014-11-13 Thread Linus Torvalds
On Mon, Nov 10, 2014 at 3:53 PM, Linus Torvalds wrote: > > So I am fine with that, it's the details that confuse me. The thing > doesn't seem to be generic enough to be used for arbitrary page > tables, with (for example) the shifts fixed by the VM page size and > the size of the pte entry type. A

Re: [PATCH 3/5] lib: lockless generic and arch independent page table (gpt) v2.

2014-11-13 Thread Rik van Riel
On 11/10/2014 03:22 PM, Linus Torvalds wrote: > Rik, the fact that you acked this just makes all your other ack's be > suspect. Did you do it just because it was from Red Hat, or do you do > it because you like seeing Acked-by's with your name? I acked it because I could not come up with a better

Re: [PATCH 3/5] lib: lockless generic and arch independent page table (gpt) v2.

2014-11-11 Thread David Airlie
> On Mon, Nov 10, 2014 at 09:45:33PM -0500, Jerome Glisse wrote: > > All the complexity arise from two things, first the need to keep ad-hoc > > link btw directory level to facilitate iteration over range. > > btw means "by the way" not "between", use a dictionary some time. > Thanks for the in

Re: [PATCH 3/5] lib: lockless generic and arch independent page table (gpt) v2.

2014-11-11 Thread Jerome Glisse
On Tue, Nov 11, 2014 at 10:59:03AM +0100, Peter Zijlstra wrote: > On Mon, Nov 10, 2014 at 09:45:33PM -0500, Jerome Glisse wrote: > > All the complexity arise from two things, first the need to keep ad-hoc > > link btw directory level to facilitate iteration over range. > > btw means "by the way" n

Re: [PATCH 3/5] lib: lockless generic and arch independent page table (gpt) v2.

2014-11-11 Thread Peter Zijlstra
On Mon, Nov 10, 2014 at 09:45:33PM -0500, Jerome Glisse wrote: > All the complexity arise from two things, first the need to keep ad-hoc > link btw directory level to facilitate iteration over range. btw means "by the way" not "between", use a dictionary some time. -- To unsubscribe from this list

Re: [PATCH 3/5] lib: lockless generic and arch independent page table (gpt) v2.

2014-11-10 Thread Linus Torvalds
On Mon, Nov 10, 2014 at 7:16 PM, Linus Torvalds wrote: > > There's no reason for a "u64 cast". The value of "1 << pd_shift" is > going to be an "int" regardless of what type pd_shift is. The type of > a shift expression is the type of the left-hand side (with the C > promotion rules forcing it to

Re: [PATCH 3/5] lib: lockless generic and arch independent page table (gpt) v2.

2014-11-10 Thread Jerome Glisse
On Mon, Nov 10, 2014 at 07:16:04PM -0800, Linus Torvalds wrote: > On Mon, Nov 10, 2014 at 6:45 PM, Jerome Glisse wrote: > > > > I was being lazy and wanted to avoid a u64 cast in most operation using > > those value but yes you right a byte (6bit) is more than enough for all > > those values. > >

Re: [PATCH 3/5] lib: lockless generic and arch independent page table (gpt) v2.

2014-11-10 Thread Linus Torvalds
On Mon, Nov 10, 2014 at 6:45 PM, Jerome Glisse wrote: > > I was being lazy and wanted to avoid a u64 cast in most operation using > those value but yes you right a byte (6bit) is more than enough for all > those values. WHAT? NONE OF WHAT YOU SAY MAKES ANY SENSE. There's no reason for a "u64 ca

Re: [PATCH 3/5] lib: lockless generic and arch independent page table (gpt) v2.

2014-11-10 Thread Jerome Glisse
On Mon, Nov 10, 2014 at 03:53:03PM -0800, Linus Torvalds wrote: > On Mon, Nov 10, 2014 at 2:50 PM, Jerome Glisse wrote: > > > > I wish i could but GPU or IOMMU do have different page table and page > > directory > > entry format. Some fields only make sense on GPU. Even if you look at Intel > >

Re: [PATCH 3/5] lib: lockless generic and arch independent page table (gpt) v2.

2014-11-10 Thread Linus Torvalds
On Mon, Nov 10, 2014 at 2:50 PM, Jerome Glisse wrote: > > I wish i could but GPU or IOMMU do have different page table and page > directory > entry format. Some fields only make sense on GPU. Even if you look at Intel or > AMD IOMMU they use different format. The intention of my patch is to provi

Re: [PATCH 3/5] lib: lockless generic and arch independent page table (gpt) v2.

2014-11-10 Thread Jerome Glisse
On Mon, Nov 10, 2014 at 01:47:01PM -0800, Linus Torvalds wrote: > On Mon, Nov 10, 2014 at 1:35 PM, Linus Torvalds > wrote: > > > > Or do you actually have a setup where actual non-CPU hardware actually > > walks the page tables you create and call "page tables"? > > So just to clarify: I haven't

Re: [PATCH 3/5] lib: lockless generic and arch independent page table (gpt) v2.

2014-11-10 Thread Jerome Glisse
On Mon, Nov 10, 2014 at 01:35:24PM -0800, Linus Torvalds wrote: > On Mon, Nov 10, 2014 at 12:58 PM, Jerome Glisse wrote: > > On Mon, Nov 10, 2014 at 12:22:03PM -0800, Linus Torvalds wrote: > > > > Also during Linux Plumber people working on IOMMU expressed there wish to > > see some generic "page

Re: [PATCH 3/5] lib: lockless generic and arch independent page table (gpt) v2.

2014-11-10 Thread Linus Torvalds
On Mon, Nov 10, 2014 at 1:35 PM, Linus Torvalds wrote: > > Or do you actually have a setup where actual non-CPU hardware actually > walks the page tables you create and call "page tables"? So just to clarify: I haven't looked at all your follow-up patches at all, although I've seen the overviews

Re: [PATCH 3/5] lib: lockless generic and arch independent page table (gpt) v2.

2014-11-10 Thread Linus Torvalds
On Mon, Nov 10, 2014 at 12:58 PM, Jerome Glisse wrote: > On Mon, Nov 10, 2014 at 12:22:03PM -0800, Linus Torvalds wrote: > > Also during Linux Plumber people working on IOMMU expressed there wish to > see some generic "page table" code that can be share among IOMMU as most > IOMMU use a page table

Re: [PATCH 3/5] lib: lockless generic and arch independent page table (gpt) v2.

2014-11-10 Thread Jerome Glisse
On Mon, Nov 10, 2014 at 12:22:03PM -0800, Linus Torvalds wrote: > Ok, so things are somewhat calm, and I'm trying to take time off to > see what's going on. And I'm not happy. > > On Mon, Nov 10, 2014 at 10:28 AM, wrote: > > > > Page table is a common structure format most notably use by cpu mmu

Re: [PATCH 3/5] lib: lockless generic and arch independent page table (gpt) v2.

2014-11-10 Thread Linus Torvalds
Ok, so things are somewhat calm, and I'm trying to take time off to see what's going on. And I'm not happy. On Mon, Nov 10, 2014 at 10:28 AM, wrote: > > Page table is a common structure format most notably use by cpu mmu. The > arch depend page table code has strong tie to the architecture which

[PATCH 3/5] lib: lockless generic and arch independent page table (gpt) v2.

2014-11-10 Thread j . glisse
From: Jérôme Glisse Page table is a common structure format most notably use by cpu mmu. The arch depend page table code has strong tie to the architecture which makes it unsuitable to be use by other non arch specific code. This patch implement a generic and arch independent page table. It is g

Re: [PATCH 3/5] lib: lockless generic and arch independent page table (gpt) v2.

2014-11-06 Thread Jerome Glisse
On Thu, Nov 06, 2014 at 05:32:00PM -0500, Rik van Riel wrote: > -BEGIN PGP SIGNED MESSAGE- > Hash: SHA1 > > On 11/03/2014 03:42 PM, j.gli...@gmail.com wrote: > > From: Jérôme Glisse > > > > Page table is a common structure format most notably use by cpu > > mmu. The arch depend page tabl

Re: [PATCH 3/5] lib: lockless generic and arch independent page table (gpt) v2.

2014-11-06 Thread Rik van Riel
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 11/06/2014 05:40 PM, Jerome Glisse wrote: > On Thu, Nov 06, 2014 at 05:32:00PM -0500, Rik van Riel wrote: > Never a fan of preprocessor magic, but I see why it's needed. > > Acked-by: Rik van Riel > >> v1 is not using preprocessor but has a big

Re: [PATCH 3/5] lib: lockless generic and arch independent page table (gpt) v2.

2014-11-06 Thread Rik van Riel
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 11/03/2014 03:42 PM, j.gli...@gmail.com wrote: > From: Jérôme Glisse > > Page table is a common structure format most notably use by cpu > mmu. The arch depend page table code has strong tie to the > architecture which makes it unsuitable to be us

[PATCH 3/5] lib: lockless generic and arch independent page table (gpt) v2.

2014-11-03 Thread j . glisse
From: Jérôme Glisse Page table is a common structure format most notably use by cpu mmu. The arch depend page table code has strong tie to the architecture which makes it unsuitable to be use by other non arch specific code. This patch implement a generic and arch independent page table. It is g