Module Name: src Committed By: maxv Date: Sun Aug 12 15:31:01 UTC 2018
Modified Files: src/sys/arch/amd64/amd64: genassym.cf locore.S machdep.c prekern.c src/sys/arch/amd64/include: pmap.h src/sys/arch/x86/x86: pmap.c Log Message: More ASLR: randomize the location of the PTE area. The PTE slot is not created in locore anymore, but a little later; by using the already entered L4 page, rather than the recursive slot itself (which doesn't exist yet). In the prekern we still map the slot - the prekern behaves as an external locore -, because we need it as part of the randomization/relocation work. The kernel then removes this slot, and regenerates a randomized one. Tested on GENERIC and GENERIC_KASLR, Xen doesn't have it and dom0 still boots fine. To generate a diff of this commit: cvs rdiff -u -r1.69 -r1.70 src/sys/arch/amd64/amd64/genassym.cf cvs rdiff -u -r1.173 -r1.174 src/sys/arch/amd64/amd64/locore.S cvs rdiff -u -r1.313 -r1.314 src/sys/arch/amd64/amd64/machdep.c cvs rdiff -u -r1.4 -r1.5 src/sys/arch/amd64/amd64/prekern.c cvs rdiff -u -r1.52 -r1.53 src/sys/arch/amd64/include/pmap.h cvs rdiff -u -r1.301 -r1.302 src/sys/arch/x86/x86/pmap.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.