[[!template id=project title="Add support for mapping userspace via SMAP/SMEP on newer x86 CPUs" contact=""" [port-amd64](mailto:port-amd64@NetBSD.org), [port-i386](mailto:port-i386@NetBSD.org) """ category="ports" difficulty="medium" done_by="Maxime Villard" description=""" 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. """ ]]