On Fri, 23 Feb 2001, Andrea Arcangeli wrote:
>
> I think that can't happen. Infact I think the whole section:
>
> pmd = pmd_offset(pgd, address);
> pmd_k = pmd_offset(pgd_k, address);
>
> if (pmd_present(*pmd) || !pmd_present(*pmd_k))
> goto bad_area_nosemaphore;
> set_pmd(pmd, *pmd_k);
> return;
>
> is superflows.
No. Think about the differences in PAE and non-PAE mode.
> The middle pagetable is shared and the pmd_t entry is set by vmalloc itself (it
> just points to the as well shared pte), it's only the pgd that is setup lazily
In non-PAE mode, the pgd entry doesn't exist. pgd_present() returns a
unconditional 1. Its' the pmd functions that kick in then.
Linus
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Fri Feb 23 2001 - 21:00:31 EST