Module Name:    src
Committed By:   maxv
Date:           Mon Jul 11 14:18:16 UTC 2016

Modified Files:
        src/sys/arch/x86/x86: pmap.c

Log Message:
KNF and simplify a little.


To generate a diff of this commit:
cvs rdiff -u -r1.210 -r1.211 src/sys/arch/x86/x86/pmap.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/x86/x86/pmap.c
diff -u src/sys/arch/x86/x86/pmap.c:1.210 src/sys/arch/x86/x86/pmap.c:1.211
--- src/sys/arch/x86/x86/pmap.c:1.210	Sat Jul  9 09:33:21 2016
+++ src/sys/arch/x86/x86/pmap.c	Mon Jul 11 14:18:16 2016
@@ -1,4 +1,4 @@
-/*	$NetBSD: pmap.c,v 1.210 2016/07/09 09:33:21 maxv Exp $	*/
+/*	$NetBSD: pmap.c,v 1.211 2016/07/11 14:18:16 maxv Exp $	*/
 
 /*-
  * Copyright (c) 2008, 2010, 2016 The NetBSD Foundation, Inc.
@@ -171,7 +171,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.210 2016/07/09 09:33:21 maxv Exp $");
+__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.211 2016/07/11 14:18:16 maxv Exp $");
 
 #include "opt_user_ldt.h"
 #include "opt_lockdebug.h"
@@ -1656,7 +1656,6 @@ pmap_prealloc_lowmem_ptps(void)
 			HYPERVISOR_update_va_mapping (newp + KERNBASE,
 			    xpmap_ptom_masked(newp) | PG_u | PG_V, UVMF_INVLPG);
 
-
 		if (level == PTP_LEVELS) { /* Top level pde is per-cpu */
 			pd_entry_t *kpm_pdir;
 			/* Reach it via recursive mapping */
@@ -4305,7 +4304,6 @@ pmap_alloc_level(pd_entry_t * const *pde
     long *needed_ptps)
 {
 	unsigned long i;
-	vaddr_t va;
 	paddr_t pa;
 	unsigned long index, endindex;
 	int level;
@@ -4319,20 +4317,18 @@ pmap_alloc_level(pd_entry_t * const *pde
 			pdep = pmap_kernel()->pm_pdir;
 		else
 			pdep = pdes[level - 2];
-		va = kva;
 		index = pl_i_roundup(kva, level);
 		endindex = index + needed_ptps[level - 1] - 1;
 
-
 		for (i = index; i <= endindex; i++) {
 			pt_entry_t pte;
 
 			KASSERT(!pmap_valid_entry(pdep[i]));
 			pa = pmap_get_physpage();
 			pte = pmap_pa2pte(pa) | PG_k | PG_V | PG_RW;
-#ifdef XEN
 			pmap_pte_set(&pdep[i], pte);
-#if defined(PAE) || defined(__x86_64__)
+
+#if defined(XEN) && (defined(PAE) || defined(__x86_64__))
 			if (level == PTP_LEVELS && i >= PDIR_SLOT_KERN) {
 				if (__predict_true(
 				    cpu_info_primary.ci_flags & CPUF_PRESENT)) {
@@ -4354,14 +4350,11 @@ pmap_alloc_level(pd_entry_t * const *pde
 					pmap_pte_set(cpu_pdep, pte);
 				}
 			}
-#endif /* PAE || __x86_64__ */
-#else /* XEN */
-			pdep[i] = pte;
-#endif /* XEN */
+#endif /* XEN && (PAE || __x86_64__) */
+
 			KASSERT(level != PTP_LEVELS || nkptp[level - 1] +
 			    pl_i(VM_MIN_KERNEL_ADDRESS, level) == i);
 			nkptp[level - 1]++;
-			va += nbpd[level - 1];
 		}
 		pmap_pte_flush();
 	}
@@ -4403,16 +4396,11 @@ pmap_growkernel(vaddr_t maxkvaddr)
 	old = nkptp[PTP_LEVELS - 1];
 #endif
 
-	/*
-	 * This loop could be optimized more, but pmap_growkernel()
-	 * is called infrequently.
-	 */
+	/* Initialize needed_kptp. */
 	for (i = PTP_LEVELS - 1; i >= 1; i--) {
 		target_nptp = pl_i_roundup(maxkvaddr, i + 1) -
 		    pl_i_roundup(VM_MIN_KERNEL_ADDRESS, i + 1);
-		/*
-		 * XXX only need to check toplevel.
-		 */
+
 		if (target_nptp > nkptpmax[i])
 			panic("out of KVA space");
 		KASSERT(target_nptp >= nkptp[i]);
@@ -4422,8 +4410,7 @@ pmap_growkernel(vaddr_t maxkvaddr)
 	pmap_alloc_level(normal_pdes, pmap_maxkvaddr, PTP_LEVELS, needed_kptp);
 
 	/*
-	 * If the number of top level entries changed, update all
-	 * pmaps.
+	 * If the number of top level entries changed, update all pmaps.
 	 */
 	if (needed_kptp[PTP_LEVELS - 1] != 0) {
 #ifdef XEN
@@ -4433,7 +4420,7 @@ pmap_growkernel(vaddr_t maxkvaddr)
 		mutex_enter(&pmaps_lock);
 		LIST_FOREACH(pm, &pmaps, pm_list) {
 			int pdkidx;
-			for (pdkidx =  PDIR_SLOT_KERN + old;
+			for (pdkidx = PDIR_SLOT_KERN + old;
 			    pdkidx < PDIR_SLOT_KERN + nkptp[PTP_LEVELS - 1];
 			    pdkidx++) {
 				pmap_pte_set(&pm->pm_pdir[pdkidx],
@@ -4449,8 +4436,8 @@ pmap_growkernel(vaddr_t maxkvaddr)
 		mutex_enter(&pmaps_lock);
 		LIST_FOREACH(pm, &pmaps, pm_list) {
 			memcpy(&pm->pm_pdir[PDIR_SLOT_KERN + old],
-			       &kpm->pm_pdir[PDIR_SLOT_KERN + old],
-			       newpdes * sizeof (pd_entry_t));
+			    &kpm->pm_pdir[PDIR_SLOT_KERN + old],
+			    newpdes * sizeof (pd_entry_t));
 		}
 		mutex_exit(&pmaps_lock);
 #endif

Reply via email to