Date: Tue, 16 Sep 2008 20:00:03 GMT From: Rafal Jaworowski <raj@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 149896 for review Message-ID: <200809162000.m8GK03Pn011388@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=149896 Change 149896 by raj@raj_mimi on 2008/09/16 19:59:50 Move pmap_remove() L2 cache invalidation to a proper place. Previously it was causing a gratuitous page fault, which led to a nasty LOR. Obtained from: Semihalf Affected files ... .. //depot/projects/arm/src/sys/arm/arm/pmap.c#42 edit Differences ... ==== //depot/projects/arm/src/sys/arm/arm/pmap.c#42 (text+ko) ==== @@ -3874,15 +3874,17 @@ if (l2pte_valid(pte) && pmap_is_current(pm)) { if (total < PMAP_REMOVE_CLEAN_LIST_SIZE) { total++; - cpu_l2cache_wbinv_range(sva, - PAGE_SIZE); if (is_exec) { cpu_idcache_wbinv_range(sva, - PAGE_SIZE); + PAGE_SIZE); + cpu_l2cache_wbinv_range(sva, + PAGE_SIZE); cpu_tlb_flushID_SE(sva); } else if (is_refd) { cpu_dcache_wbinv_range(sva, - PAGE_SIZE); + PAGE_SIZE); + cpu_l2cache_wbinv_range(sva, + PAGE_SIZE); cpu_tlb_flushD_SE(sva); } } else if (total == PMAP_REMOVE_CLEAN_LIST_SIZE) {
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200809162000.m8GK03Pn011388>