IMPORTANT: This project was completed by Maxime Villard. You may still contact the people above for details, but please do not submit an application for this project.

On x86 CPUs, NetBSD currently maps the currently running userland process inside kernel VA. This allows for easy access to userland data, but also is a security risk and hides kernel programming errors. Other architectures are not doing it and require explicit copyin(9)/copyout(9) to access such pointers.

Newer x86 CPUs provide features called SMAP or SMEP to help with this. This project is about making use of these features if available and modify the x86 pmap modules accordingly.

The influence on XEN needs to be evaluated, the concepts may not apply 1:1 there but of course XEN has to stay functional.