linux/arch/x86/kernel/cpu
H. Peter Anvin 63bcff2a30 x86, smap: Add STAC and CLAC instructions to control user space access
When Supervisor Mode Access Prevention (SMAP) is enabled, access to
userspace from the kernel is controlled by the AC flag.  To make the
performance of manipulating that flag acceptable, there are two new
instructions, STAC and CLAC, to set and clear it.

This patch adds those instructions, via alternative(), when the SMAP
feature is enabled.  It also adds X86_EFLAGS_AC unconditionally to the
SYSCALL entry mask; there is simply no reason to make that one
conditional.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
Link: http://lkml.kernel.org/r/1348256595-29119-9-git-send-email-hpa@linux.intel.com
2012-09-21 12:45:27 -07:00
..
mcheck Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2012-08-03 10:59:36 -07:00
mtrr x86/mm/mtrr: Slightly simplify print_mtrr_state() 2012-07-10 10:38:15 +02:00
.gitignore
amd.c x86, cpu: Rename checking_wrmsrl() to wrmsrl_safe() 2012-06-07 13:32:04 -07:00
bugs.c x86/debug: Add KERN_<LEVEL> to bare printks, convert printks to pr_<level> 2012-06-06 09:17:22 +02:00
bugs_64.c
centaur.c x86, centaur: Enable cx8 for VIA Eden too 2011-12-15 08:04:42 -08:00
common.c x86, smap: Add STAC and CLAC instructions to control user space access 2012-09-21 12:45:27 -07:00
cpu.h x86/tlb_info: get last level TLB entry number of CPU 2012-06-27 19:28:24 -07:00
cyrix.c
hypervisor.c x86, hyper: fix build with !CONFIG_KVM_GUEST 2012-07-18 17:01:48 -03:00
intel.c x86/tlb: add tlb_flushall_shift for specific CPU 2012-06-27 19:29:10 -07:00
intel_cacheinfo.c x86/cache_info: Fix setup of l2/l3 ids 2012-05-07 15:27:37 +02:00
Makefile Merge branch 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2012-07-26 13:08:01 -07:00
match.c x86: Fix typo in MODULE_DEVICE_TABLE example: s/x86_cpu/x86cpu/ 2012-04-16 14:20:19 +02:00
mkcapflags.pl x86, cpufeature: Remove stray %s, add -w to mkcapflags.pl 2012-06-26 08:02:48 -07:00
mshyperv.c x86: Hyper-V: Integrate the clocksource with Hyper-V detection code 2011-09-08 10:33:59 +02:00
perf_event.c perf/x86: Fix USER/KERNEL tagging of samples properly 2012-07-31 17:02:04 +02:00
perf_event.h perf/x86: Fix USER/KERNEL tagging of samples properly 2012-07-31 17:02:04 +02:00
perf_event_amd.c perf/x86/amd: Unify AMD's generic and family 15h pmus 2012-07-05 21:19:41 +02:00
perf_event_amd_ibs.c perf/x86: Fix USER/KERNEL tagging of samples properly 2012-07-31 17:02:04 +02:00
perf_event_intel.c perf/x86: disable PEBS on a guest entry. 2012-08-13 19:01:04 +02:00
perf_event_intel_ds.c perf/x86: Fix USER/KERNEL tagging of samples properly 2012-07-31 17:02:04 +02:00
perf_event_intel_lbr.c perf/x86: Add LBR software filter support for Intel CPUs 2012-03-05 14:55:42 +01:00
perf_event_intel_uncore.c perf/x86: Add Intel Westmere-EX uncore support 2012-08-13 19:01:04 +02:00
perf_event_intel_uncore.h perf/x86: Add Intel Westmere-EX uncore support 2012-08-13 19:01:04 +02:00
perf_event_p4.c perf/x86: Rename Intel specific macros 2012-07-05 21:19:39 +02:00
perf_event_p6.c x86, cpu: Rename checking_wrmsrl() to wrmsrl_safe() 2012-06-07 13:32:04 -07:00
perfctr-watchdog.c
powerflags.c x86: Report cpb and eff_freq_ro flags correctly 2011-12-15 08:14:49 +01:00
proc.c x86: Simplify code by removing a !SMP #ifdefs from 'struct cpuinfo_x86' 2011-12-21 09:25:09 +01:00
rdrand.c x86, random: Verify RDRAND functionality and allow it to be disabled 2011-07-31 14:02:19 -07:00
scattered.c x86, cpufeature: Rename X86_FEATURE_DTS to X86_FEATURE_DTHERM 2012-06-25 09:01:15 -07:00
topology.c
transmeta.c
umc.c
vmware.c x86: Fix common misspellings 2011-03-18 10:39:30 +01:00