OSDN Git Service

arm64: add ptrace regsets for ptrauth key management
authorKristina Martsenko <kristina.martsenko@arm.com>
Wed, 30 Jan 2019 12:02:44 +0000 (12:02 +0000)
committerCatalin Marinas <catalin.marinas@arm.com>
Fri, 1 Feb 2019 13:56:58 +0000 (13:56 +0000)
commitd0a060be573bfbf8753a15dca35497db5e968bb0
tree3b584b617217dfcb32ef5b092fc9eed47182e29a
parente2a2e56e40822ab78e304198387f61314af7d7ce
arm64: add ptrace regsets for ptrauth key management

Add two new ptrace regsets, which can be used to request and change the
pointer authentication keys of a thread. NT_ARM_PACA_KEYS gives access
to the instruction/data address keys, and NT_ARM_PACG_KEYS to the
generic authentication key. The keys are also part of the core dump file
of the process.

The regsets are only exposed if the kernel is compiled with
CONFIG_CHECKPOINT_RESTORE=y, as the only intended use case is
checkpointing and restoring processes that are using pointer
authentication. (This can be changed later if there are other use
cases.)

Reviewed-by: Dave Martin <Dave.Martin@arm.com>
Signed-off-by: Kristina Martsenko <kristina.martsenko@arm.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Documentation/arm64/pointer-authentication.txt
arch/arm64/include/uapi/asm/ptrace.h
arch/arm64/kernel/ptrace.c
include/uapi/linux/elf.h