CVSROOT: /cvs Module name: src Changes by: kette...@cvs.openbsd.org 2015/03/10 14:12:39
Modified files: sys/arch/amd64/include: pmap.h sys/arch/amd64/amd64: pmap.c Log message: Make the amd64 pmap (more) mpsafe by protecting both the pmap itself and the pv lists with a mutex. Rearange some code to avoid sleeping/spinning with one of these locks held, and also take care that we don't allocate/free any memory in that case. This should make pmap_enter(9), pmap_remove(9) and pmap_page_protect(9) safe to use without holding the kernel lock. Other architectures will follow. ok mlarkin@, deraadt@