5f23f6d082
This code should be a good demonstration of how to use the new system calls as well as how to use protection keys in general. This code shows how to: 1. Manipulate the Protection Keys Rights User (PKRU) register 2. Set a protection key on memory 3. Fetch and/or modify PKRU from the signal XSAVE state 4. Read the kernel-provided protection key in the siginfo 5. Set up an execute-only mapping There are currently 13 tests: test_read_of_write_disabled_region test_read_of_access_disabled_region test_write_of_write_disabled_region test_write_of_access_disabled_region test_kernel_write_of_access_disabled_region test_kernel_write_of_write_disabled_region test_kernel_gup_of_access_disabled_region test_kernel_gup_write_to_write_disabled_region test_executing_on_unreadable_memory test_ptrace_of_child test_pkey_syscalls_on_non_allocated_pkey test_pkey_syscalls_bad_args test_pkey_alloc_exhaust Each of the tests is run with plain memory (via mmap(MAP_ANON)), transparent huge pages, and hugetlb. Signed-off-by: Dave Hansen <dave.hansen@linux.intel.com> Cc: linux-arch@vger.kernel.org Cc: Dave Hansen <dave@sr71.net> Cc: mgorman@techsingularity.net Cc: arnd@arndb.de Cc: linux-api@vger.kernel.org Cc: shuahkh@osg.samsung.com Cc: linux-mm@kvack.org Cc: luto@kernel.org Cc: akpm@linux-foundation.org Cc: torvalds@linux-foundation.org Link: http://lkml.kernel.org/r/20160729163024.FC5A0C2D@viggo.jf.intel.com Signed-off-by: Thomas Gleixner <tglx@linutronix.de> |
||
---|---|---|
.. | ||
breakpoints | ||
capabilities | ||
cpu-hotplug | ||
efivarfs | ||
exec | ||
firmware | ||
ftrace | ||
futex | ||
intel_pstate | ||
ipc | ||
kcmp | ||
lib | ||
media_tests | ||
membarrier | ||
memfd | ||
memory-hotplug | ||
mount | ||
mqueue | ||
net | ||
ntb | ||
powerpc | ||
pstore | ||
ptrace | ||
rcutorture | ||
seccomp | ||
sigaltstack | ||
size | ||
static_keys | ||
sysctl | ||
timers | ||
user | ||
vm | ||
x86 | ||
zram | ||
gen_kselftest_tar.sh | ||
kselftest_install.sh | ||
kselftest.h | ||
lib.mk | ||
Makefile |