Subject: Re: [PATCH] powerpc: Introduce address space "slices"

From: David Gibson <[email-masked]>
Date: Wed, 21 Feb 2007 11:29:22 +1100

On Wed, Feb 21, 2007 at 06:51:47AM +1100, Benjamin Herrenschmidt wrote:
> On Tue, 2007-02-20 at 13:45 -0600, Adam Litke wrote:
> > Your patch drops the pgoff check that prepare_hugepage_range used to
> > check.  The misaligned_offset test in libhugetlbfs identified the
> > problem.  The following patch (applied on top of yours) makes the
> > problem go away.  I am not necessarily suggesting it's the correct
> > fix... just concisely describing the problem.
> 
> Ok, I'll fold that into the patch. Ultimately, when I finally do the
> generic changes, prepare_hugepage_range() will be going away. I will
> either pass pgoff along to slice_g_u_a for it to validate the pgoff, or
> I will let f_ops->mmap() be responsible of checking it. For SPEs, I do
> the pgoff check there. Any reason tht wouldn't work for huge pages ?

Err... there was.  The trouble was the prepare() or
get_unmapped_area() which could open new slices happens before the
->mmap() call, so we could have already converted segments,
irreversibly, then have the mmap fail because of a bad alignment.  Now
that slice conversions can go both ways, that might not be a
significant problem any more.

-- 
David Gibson			| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au	| minimalist, thank you.  NOT _the_ _other_
				| _way_ _around_!
http://www.ozlabs.org/~dgibson