aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/entry_64.S
diff options
context:
space:
mode:
authorH. Peter Anvin <hpa@linux.intel.com>2012-09-26 21:02:28 -0400
committerH. Peter Anvin <hpa@linux.intel.com>2012-09-27 12:52:38 -0400
commitb2cc2a074de75671bbed5e2dda67a9252ef353ea (patch)
tree8e01fcacb8bad82c4351fa82b351ecc185fe8056 /arch/x86/kernel/entry_64.S
parent73201dbec64aebf6b0dca855b523f437972dc7bb (diff)
x86, smep, smap: Make the switching functions one-way
There is no fundamental reason why we should switch SMEP and SMAP on during early cpu initialization just to switch them off again. Now with %eflags and %cr4 forced to be initialized to a clean state, we only need the one-way enable. Also, make the functions inline to make them (somewhat) harder to abuse. This does mean that SMEP and SMAP do not get initialized anywhere near as early. Even using early_param() instead of __setup() doesn't give us control early enough to do this during the early cpu initialization phase. This seems reasonable to me, because SMEP and SMAP should not matter until we have userspace to protect ourselves from, but it does potentially make it possible for a bug involving a "leak of permissions to userspace" to get uncaught. Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
Diffstat (limited to 'arch/x86/kernel/entry_64.S')
0 files changed, 0 insertions, 0 deletions