Re: Current kernel with http://gnats.netbsd.org/39965 and pmap patches
Izumi Tsutsui <[email protected]>
| Newsgroups | gmane.os.netbsd.ports.atari |
|---|---|
| Message-ID | <[email protected]> |
[email protected] wrote: > Thanks for the patch. I applied it and tested with 030, but unfortunately kernel > panics right after it has loaded installer to ram disk with: Ok, I was actually confused. Now I think current Sysptmap code is correct. - 4KB/page systems require 4MB address space for page tables to handle whole 4GB address space. - 8KB/page systems require 2MB PT pages to handle 4GB range. - Sysptmap should be mapped as a part of Sysmap in pmap code. - On 4KB page systems, Sysmap is allocated at 0xffc00000 and its range is from 0xffc00000 to 0xffffffff, so Sysptmap_pa should be mapped at the end of KVA. - On 8KB/page systems, Sysmap is allocated at 0xff000000 (-PAGE_SIZE * NPTEPG) so its range is from 0xff000000 to 0xff1fffff, i.e. there is some unused region. This means Sysptmap_pa should be registered in the PTE entry at &((pt_entry_t *)Sysptmap)[256 - 1], not at [NPTEPG - 1] which 4KB/page systems use. Maybe we should replace some NPTEPG macro (that is actually TIB_SIZE) with TIA_SIZE, which the "256" means. Anyway, I'll try to see if there is more possible pitfall for 8KB page systems in m68k pmap code... --- Izumi Tsutsui