Date: Thu, 24 Aug 2006 17:51:46 -0700 From: Peter Grehan <grehan@freebsd.org> To: Marcel Moolenaar <marcel@xcllnt.net> Cc: ppc@freebsd.org Subject: Re: gdb(1) in the tree Message-ID: <44EE49A2.1050809@freebsd.org> In-Reply-To: <44EE45EC.3040403@freebsd.org> References: <FF91B2A4-68A6-4F30-B3A2-91B849B51415@xcllnt.net> <44ED2448.7030503@freebsd.org> <46D747A2-7126-450A-83E4-DA7367706F18@xcllnt.net> <44EE45EC.3040403@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
This is a multi-part message in MIME format. --------------010204090503000209030707 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Oops, previous one was wrong non-compilable version :( later, Peter. --------------010204090503000209030707 Content-Type: text/plain; name="mmu_oea.c.patch" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="mmu_oea.c.patch" Index: mmu_oea.c =================================================================== RCS file: /home/ncvs/src/sys/powerpc/powerpc/mmu_oea.c,v retrieving revision 1.111 diff -u -r1.111 mmu_oea.c --- mmu_oea.c 1 Aug 2006 19:06:05 -0000 1.111 +++ mmu_oea.c 25 Aug 2006 00:49:34 -0000 @@ -2012,6 +2012,22 @@ pg = PHYS_TO_VM_PAGE(pvo->pvo_pte.pte_lo & PTE_RPGN); if (pg != NULL) { + /* + * From NetBSD pmap.c r1.37 + * If the page was changed and it is mapped exec, + * invalidate it + */ + if ((pvo->pvo_pte.pte_lo & PTE_CHG) && + (moea_attr_fetch(pg) & PTE_EXEC)) { + struct pvo_head *pvoh = vm_page_to_pvoh(pg); + if (LIST_EMPTY(pvoh)) { + moea_attr_clear(pg, PTE_EXEC); + } else { + moea_syncicache(VM_PAGE_TO_PHYS(pg), + PAGE_SIZE); + } + } + moea_attr_save(pg, pvo->pvo_pte.pte_lo & (PTE_REF | PTE_CHG)); } --------------010204090503000209030707--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?44EE49A2.1050809>