Module Name:    src
Committed By:   skrll
Date:           Sun Mar 29 09:20:43 UTC 2020

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

Log Message:
PTE_SYNC before TLB flush and no need to PTE_SYNC after an unmap.


To generate a diff of this commit:
cvs rdiff -u -r1.401 -r1.402 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.401 src/sys/arch/arm/arm32/pmap.c:1.402
--- src/sys/arch/arm/arm32/pmap.c:1.401	Sun Mar 29 09:10:26 2020
+++ src/sys/arch/arm/arm32/pmap.c	Sun Mar 29 09:20:43 2020
@@ -1,4 +1,4 @@
-/*	$NetBSD: pmap.c,v 1.401 2020/03/29 09:10:26 skrll Exp $	*/
+/*	$NetBSD: pmap.c,v 1.402 2020/03/29 09:20:43 skrll Exp $	*/
 
 /*
  * Copyright 2003 Wasabi Systems, Inc.
@@ -198,7 +198,7 @@
 #endif
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.401 2020/03/29 09:10:26 skrll Exp $");
+__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.402 2020/03/29 09:20:43 skrll Exp $");
 
 #include <sys/atomic.h>
 #include <sys/param.h>
@@ -2722,9 +2722,10 @@ pmap_syncicache_page(struct vm_page_md *
 		 * Unmap the page(s).
 		 */
 		l2pte_reset(ptep + j);
+		PTE_SYNC(ptep + j);
+
 		pmap_tlb_flush_SE(kpm, dstp + i, PVF_REF | PVF_EXEC);
 	}
-	PTE_SYNC_RANGE(ptep, way_size / L2_S_SIZE);
 
 	md->pvh_attrs |= PVF_EXEC;
 	PMAPCOUNT(exec_synced);

Reply via email to