|
Neohapsis is currently accepting applications for employment. For more information, please visit our website www.neohapsis.com or email hr@neohapsis.com |
From: Mark Kettenis (kettenis
cvs.openbsd.org)
Date: Sun Mar 28 2010 - 13:00:51 CDT
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
CVSROOT: /cvs
Module name: src
Changes by: kettenis
cvs.openbsd.org 2010/03/28 12:00:51
Modified files:
sys/arch/hppa/hppa: pmap.c
Log message:
Fix user-after-free bug in pmap_remove(). Page table pages are freed as soon
as the last page table entry that was actually used is cleared. So make sure
we check the page table page is still there for every page we remove.
Otherwise we will bring back the tlb entry and cache lines when we touch the
freed page, and we will create an illegal alias (non-equivalent mapping)
as soon as the page gets re-used.
Seems to fix the last remaining issue with fast page recycling (although I
need to do a bit more testing to be sure).
Help from drahn
, ok jsing
and miod
(for an earlier version of this diff)
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]