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_deactivate don't set TTBR with th...



details:   https://anonhg.NetBSD.org/src/rev/4b1a5bc9de95
branches:  trunk
changeset: 803487:4b1a5bc9de95
user:      skrll <skrll%NetBSD.org@localhost>
date:      Wed Oct 29 22:11:34 2014 +0000

description:
In pmap_deactivate don't set TTBR with the ASID of the deactivated LWP -
use KERNEL_PID instead.

This is probably a no-op as TTBCR_S_PD0 should (still) be set at the time
of the call to cpu_setttb.

diffstat:

 sys/arch/arm/arm32/pmap.c |  7 +++----
 1 files changed, 3 insertions(+), 4 deletions(-)

diffs (35 lines):

diff -r b28e59366536 -r 4b1a5bc9de95 sys/arch/arm/arm32/pmap.c
--- a/sys/arch/arm/arm32/pmap.c Wed Oct 29 21:16:06 2014 +0000
+++ b/sys/arch/arm/arm32/pmap.c Wed Oct 29 22:11:34 2014 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: pmap.c,v 1.305 2014/10/25 10:58:12 skrll Exp $ */
+/*     $NetBSD: pmap.c,v 1.306 2014/10/29 22:11:34 skrll Exp $ */
 
 /*
  * Copyright 2003 Wasabi Systems, Inc.
@@ -215,7 +215,7 @@
 
 #include <arm/locore.h>
 
-__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.305 2014/10/25 10:58:12 skrll Exp $");
+__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.306 2014/10/29 22:11:34 skrll Exp $");
 
 //#define PMAP_DEBUG
 #ifdef PMAP_DEBUG
@@ -4872,7 +4872,6 @@
 #ifdef ARM_MMU_EXTENDED
        kpreempt_disable();
        struct cpu_info * const ci = curcpu();
-       struct pmap_asid_info * const pai = PMAP_PAI(pm, cpu_tlb_info(ci));
        /*
         * Disable translation table walks from TTBR0 while no pmap has been
         * activated.
@@ -4881,7 +4880,7 @@
        armreg_ttbcr_write(old_ttbcr | TTBCR_S_PD0);
        arm_isb();
        pmap_tlb_asid_deactivate(pm);
-       cpu_setttb(pmap_kernel()->pm_l1_pa, pai->pai_asid);
+       cpu_setttb(pmap_kernel()->pm_l1_pa, KERNEL_PID);
        ci->ci_pmap_cur = pmap_kernel();
        kpreempt_enable();
 #else



Home | Main Index | Thread Index | Old Index