Module Name: src Committed By: matt Date: Thu Apr 3 14:23:38 UTC 2014
Modified Files: src/sys/uvm/pmap: pmap_tlb.c Log Message: Compare ASIDs, not pmaps. To generate a diff of this commit: cvs rdiff -u -r1.6 -r1.7 src/sys/uvm/pmap/pmap_tlb.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/uvm/pmap/pmap_tlb.c diff -u src/sys/uvm/pmap/pmap_tlb.c:1.6 src/sys/uvm/pmap/pmap_tlb.c:1.7 --- src/sys/uvm/pmap/pmap_tlb.c:1.6 Thu Apr 3 13:54:59 2014 +++ src/sys/uvm/pmap/pmap_tlb.c Thu Apr 3 14:23:38 2014 @@ -1,4 +1,4 @@ -/* $NetBSD: pmap_tlb.c,v 1.6 2014/04/03 13:54:59 matt Exp $ */ +/* $NetBSD: pmap_tlb.c,v 1.7 2014/04/03 14:23:38 matt Exp $ */ /*- * Copyright (c) 2010 The NetBSD Foundation, Inc. @@ -31,7 +31,7 @@ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: pmap_tlb.c,v 1.6 2014/04/03 13:54:59 matt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: pmap_tlb.c,v 1.7 2014/04/03 14:23:38 matt Exp $"); /* * Manages address spaces in a TLB. @@ -993,7 +993,7 @@ pmap_tlb_asid_release_all(struct pmap *p struct pmap_asid_info * const pai = PMAP_PAI(pm, ti); TLBINFO_LOCK(ti); if (pai->pai_asid > KERNEL_PID) { - if (curcpu()->ci_pmap_cur == pm) { + if (curcpu()->ci_pmap_asid_cur == pai->pai_asid) { tlb_invalidate_asids(pai->pai_asid, pai->pai_asid); } else { pmap_pai_reset(ti, pai, pm);