Re: [PATCH 1/6] freepgt: free_pgtables use vma list

From: Hugh Dickins
Date: Tue Mar 29 2005 - 15:54:54 EST


On Wed, 23 Mar 2005, David S. Miller wrote:
> On Wed, 23 Mar 2005 11:16:27 -0800
> "Luck, Tony" <tony.luck@xxxxxxxxx> wrote:
>
> > Can we legislate that "end==0" isn't possible.
>
> It is possible with some out-of-tree patches.
>
> I could certainly support it on sparc64, the only
> glitch is that this is where the virtually mapped
> linear page tables sit right now :-)

Though my knowledge of out-of-tree patches is very limited,
I believe "end == 0" is not possible on any arch - when "end"
originates from vma->vm_end (or vm_struct->addr + size). There
are plenty of "BUG_ON(addr >= end)"s dotted around to support that,
and other places that would be confused by vm_start > vm_end.

(And when Linus first proposed the sysenter page at 0xfffff000,
I protested, and he brought it down to 0xffffe000: I think we'll
do well ever to keep that last virtual page invalid.)

But certainly "ceiling == 0" is possible and common, and "rounded-up
end" may well be 0 with out-of-tree patches. When I did those
free_pgtables tests, it seemed simpler to treat "end" in the same
way as "ceiling", implicitly allowing it the 0 case. Perhaps
that's not so in Nick's version, I've yet to think through it.

Hugh
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/