Messages in this thread | | | Date | Fri, 23 Feb 2001 13:09:02 -0800 (PST) | From | Linus Torvalds <> | Subject | Re: Linux 2.4.1-ac15 |
| |
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/
| |