On Mon, 19 Mar 2001, Linus Torvalds wrote:
> The complete changelog is appended, but the biggest recent change is
> the mmap_sem change, which I updated with new locking rules for
> pte/pmd_alloc to avoid the race on the actual page table build.
>
> This has only been tested on i386 without PAE, and is known to break
> other architectures. Ingo, mind checking what PAE needs? [...]
one nontrivial issue was that on PAE the pgd has to be installed with
'present' pgd entries, due to a CPU erratum. This means that the
pgd_present() code in mm/memory.c, while correct theoretically, doesnt
work with PAE. An equivalent solution is to use !pgd_none(), which also
works with the PAE workaround.
PAE mode could re-define pgd_present() to filter out the workaround - do
you prefer this to the !pgd_none() solution?
the rest was pretty straightforward.
in any case, with the attached pae-2.4.3-A4 patch (against 2.4.3-pre7,
applies to 2.4.2-ac24 cleanly as well) applied, 2.4.3-pre7 boots & works
just fine on PAE 64GB-HIGHMEM and non-PAE kernels.
- the patch also does another cleanup: removes various bad_pagetable code
snippets all around the x86 tree, it's not needed anymore. This saves 8
KB RAM on x86 systems.
- removed the last remaining *_kernel() macro.
- fixed a minor clear_page() bug in pgalloc.h, gfp() could fail in the
future.
Ingo
This archive was generated by hypermail 2b29 : Sat Mar 31 2001 - 21:00:11 EST