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

David S. Miller
2005-03-22T18:39:38Z

On Tue, 22 Mar 2005 16:37:09 +0000 (GMT)
Hugh Dickins <hugh@veritas.com> wrote:

> If you and David could try the lame patch below,
> it'll at least give us a slight clue of where to be looking -
> every mm exiting with nr_ptes 1 means something different from
> every mm exiting with nr_ptes -1 means something different from
> occasional mms exiting with nr_ptes something positive.

I didn't use your debugging patch, I used something slightly
more sophisticated to simply traces nr_ptes counter bumps
then halt the system when the BUG_ON(mm->nr_ptes) triggered
so I could analyze things.

What happens is (all virtual addresses are PMD_MASK'd):

1) We map 3 PTE tables.
0x0000000000000000
0x0000000070000000
0x00000000ef800000
2) We only unmap one PTE table.
0x0000000000000000
3) Then we of course BUG() because nr_ptes is 2

I'm now adding more debugging to figure out why only the
first PTE table is being unmapped.