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;
}