svn commit: r342710 - in stable/12/sys/i386: i386 include
Konstantin Belousov
kib at FreeBSD.org
Thu Jan 3 00:36:35 UTC 2019
Author: kib
Date: Thu Jan 3 00:36:33 2019
New Revision: 342710
URL: https://svnweb.freebsd.org/changeset/base/342710
Log:
MFC r342653, r342654:
Update comments: paging is initialized in pmap_cold().
Modified:
stable/12/sys/i386/i386/pmap.c
stable/12/sys/i386/include/pmap.h
Directory Properties:
stable/12/ (props changed)
Modified: stable/12/sys/i386/i386/pmap.c
==============================================================================
--- stable/12/sys/i386/i386/pmap.c Wed Jan 2 23:57:37 2019 (r342709)
+++ stable/12/sys/i386/i386/pmap.c Thu Jan 3 00:36:33 2019 (r342710)
@@ -569,9 +569,9 @@ pmap_cold(void)
/*
* Bootstrap the system enough to run with virtual memory.
*
- * On the i386 this is called after mapping has already been enabled
- * in locore.s with the page table created in pmap_cold(),
- * and just syncs the pmap module with what has already been done.
+ * On the i386 this is called after pmap_cold() created intial
+ * kernel page table and enabled paging, and just syncs the pmap
+ * module with what has already been done.
*/
void
pmap_bootstrap(vm_paddr_t firstaddr)
@@ -594,11 +594,12 @@ pmap_bootstrap(vm_paddr_t firstaddr)
vm_phys_add_seg(KPTphys, KPTphys + ptoa(nkpt));
/*
- * Initialize the first available kernel virtual address. However,
- * using "firstaddr" may waste a few pages of the kernel virtual
- * address space, because locore may not have mapped every physical
- * page that it allocated. Preferably, locore would provide a first
- * unused virtual address in addition to "firstaddr".
+ * Initialize the first available kernel virtual address.
+ * However, using "firstaddr" may waste a few pages of the
+ * kernel virtual address space, because pmap_cold() may not
+ * have mapped every physical page that it allocated.
+ * Preferably, pmap_cold() would provide a first unused
+ * virtual address in addition to "firstaddr".
*/
virtual_avail = (vm_offset_t)firstaddr;
virtual_end = VM_MAX_KERNEL_ADDRESS;
@@ -665,7 +666,7 @@ pmap_bootstrap(vm_paddr_t firstaddr)
/*
* KPTmap is used by pmap_kextract().
*
- * KPTmap is first initialized by locore. However, that initial
+ * KPTmap is first initialized by pmap_cold(). However, that initial
* KPTmap can only support NKPT page table pages. Here, a larger
* KPTmap is created that can support KVA_PAGES page table pages.
*/
Modified: stable/12/sys/i386/include/pmap.h
==============================================================================
--- stable/12/sys/i386/include/pmap.h Wed Jan 2 23:57:37 2019 (r342709)
+++ stable/12/sys/i386/include/pmap.h Thu Jan 3 00:36:33 2019 (r342710)
@@ -125,7 +125,7 @@
/*
* The initial number of kernel page table pages that are constructed
- * by locore must be sufficient to map vm_page_array. That number can
+ * by pmap_cold() must be sufficient to map vm_page_array[]. That number can
* be calculated as follows:
* max_phys / PAGE_SIZE * sizeof(struct vm_page) / NBPDR
* PAE: max_phys 16G, sizeof(vm_page) 76, NBPDR 2M, 152 page table pages.
@@ -228,7 +228,7 @@ extern pd_entry_t *IdlePTD; /* physical address of "Id
* a kernel page table page after the corresponding virtual addresses have
* been promoted to a 2/4MB page mapping.
*
- * KPTmap is first initialized by locore to support just NPKT page table
+ * KPTmap is first initialized by pmap_cold() to support just NPKT page table
* pages. Later, it is reinitialized by pmap_bootstrap() to allow for
* expansion of the kernel page table.
*/
More information about the svn-src-stable-12
mailing list