Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/sys/arch/arm/arm32 In pmap_enter only flush the TLB if reall...
details: https://anonhg.NetBSD.org/src/rev/4cda3438c692
branches: trunk
changeset: 333529:4cda3438c692
user: skrll <skrll%NetBSD.org@localhost>
date: Fri Nov 07 12:43:36 2014 +0000
description:
In pmap_enter only flush the TLB if really necessary
diffstat:
sys/arch/arm/arm32/pmap.c | 9 +++++----
1 files changed, 5 insertions(+), 4 deletions(-)
diffs (30 lines):
diff -r d477ddf9b787 -r 4cda3438c692 sys/arch/arm/arm32/pmap.c
--- a/sys/arch/arm/arm32/pmap.c Fri Nov 07 12:42:27 2014 +0000
+++ b/sys/arch/arm/arm32/pmap.c Fri Nov 07 12:43:36 2014 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: pmap.c,v 1.309 2014/11/05 09:13:16 skrll Exp $ */
+/* $NetBSD: pmap.c,v 1.310 2014/11/07 12:43:36 skrll Exp $ */
/*
* Copyright 2003 Wasabi Systems, Inc.
@@ -215,7 +215,7 @@
#include <arm/locore.h>
-__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.309 2014/11/05 09:13:16 skrll Exp $");
+__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.310 2014/11/07 12:43:36 skrll Exp $");
//#define PMAP_DEBUG
#ifdef PMAP_DEBUG
@@ -3316,8 +3316,9 @@
if (npte != opte) {
l2pte_reset(ptep);
PTE_SYNC(ptep);
- pmap_tlb_flush_SE(pm, va, oflags);
-
+ if (l2pte_valid_p(opte)) {
+ pmap_tlb_flush_SE(pm, va, oflags);
+ }
l2pte_set(ptep, npte, 0);
PTE_SYNC(ptep);
#ifndef ARM_MMU_EXTENDED
Home |
Main Index |
Thread Index |
Old Index