Hugh Dickins wrote:
On Tue, 22 Mar 2005, David S. Miller wrote:

On Tue, 22 Mar 2005 19:36:46 +0000 (GMT)
Hugh Dickins <[EMAIL PROTECTED]> wrote:


I notice that although both i386 and sparc64 use pgtable-nopud.h, the
i386 pud_clear does nothing at all and the sparc64 pud_clear resets to 0.

This was a dead end. I386 doesn't do anything with pud_clear() in order to work around a chip erratum.

IA64 does clear in pud_clear() just like sparc64.


My mind kept flipping back and forth on whether it was pud_clear().
I agree, I can't see that it's the issue now.


It shouldn't be.

In the case that pud is folded, free_pud_range will only call into
free_pmd_range once, and that function will loop over the required
range of the pud (ie. the pmd). If it then also falls through to
pud_clear in that function, it will also fall through to pgd_clear
in free_pud_range. So it doesn't _really_ matter which one does the
actual clearing in that case.

I think David's on the right track - I think there's something a
bit wrong at the top. In my reply to Andrew in this thread I
posted a patch which may at least get things working...


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

Reply via email to