Module Name: src Committed By: skrll Date: Wed Oct 29 22:11:34 UTC 2014
Modified Files: src/sys/arch/arm/arm32: pmap.c Log Message: 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. To generate a diff of this commit: cvs rdiff -u -r1.305 -r1.306 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.305 src/sys/arch/arm/arm32/pmap.c:1.306 --- src/sys/arch/arm/arm32/pmap.c:1.305 Sat Oct 25 10:58:12 2014 +++ src/sys/arch/arm/arm32/pmap.c Wed Oct 29 22:11:34 2014 @@ -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 @@ pmap_deactivate(struct lwp *l) #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 @@ pmap_deactivate(struct lwp *l) 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