Module Name:    src
Committed By:   skrll
Date:           Fri Mar 13 16:25:19 UTC 2020

Modified Files:
        src/sys/arch/arm/arm32: pmap.c

Log Message:
Enhance the DIAGNOSTICs around pmap_grow_map


To generate a diff of this commit:
cvs rdiff -u -r1.397 -r1.398 src/sys/arch/arm/arm32/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/arm/arm32/pmap.c
diff -u src/sys/arch/arm/arm32/pmap.c:1.397 src/sys/arch/arm/arm32/pmap.c:1.398
--- src/sys/arch/arm/arm32/pmap.c:1.397	Fri Mar 13 16:16:29 2020
+++ src/sys/arch/arm/arm32/pmap.c	Fri Mar 13 16:25:19 2020
@@ -1,4 +1,4 @@
-/*	$NetBSD: pmap.c,v 1.397 2020/03/13 16:16:29 skrll Exp $	*/
+/*	$NetBSD: pmap.c,v 1.398 2020/03/13 16:25:19 skrll Exp $	*/
 
 /*
  * Copyright 2003 Wasabi Systems, Inc.
@@ -198,7 +198,7 @@
 #endif
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.397 2020/03/13 16:16:29 skrll Exp $");
+__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.398 2020/03/13 16:25:19 skrll Exp $");
 
 #include <sys/atomic.h>
 #include <sys/param.h>
@@ -5837,15 +5837,17 @@ pmap_grow_map(vaddr_t va, paddr_t *pap)
 
 	PMAPCOUNT(pt_mappings);
 
-	struct l2_bucket * const l2b __diagused =
-	    pmap_get_l2_bucket(pmap_kernel(), va);
+	const pmap_t kpm __diagused = pmap_kernel();
+	struct l2_bucket * const l2b __diagused = pmap_get_l2_bucket(kpm, va);
 	KASSERT(l2b != NULL);
 
 	pt_entry_t * const ptep __diagused = &l2b->l2b_kva[l2pte_index(va)];
-	const pt_entry_t opte __diagused = *ptep;
-	KASSERT((opte & L2_S_CACHE_MASK) == pte_l2_s_cache_mode_pt);
+	const pt_entry_t pte __diagused = *ptep;
+	KASSERT(l2pte_valid_p(pte));
+	KASSERT((pte & L2_S_CACHE_MASK) == pte_l2_s_cache_mode_pt);
 
 	memset((void *)va, 0, PAGE_SIZE);
+
 	return 0;
 }
 

Reply via email to