arm64: signal: factor out signal frame record allocation
authorDave Martin <Dave.Martin@arm.com>
Thu, 15 Jun 2017 14:03:41 +0000 (15:03 +0100)
committerWill Deacon <will.deacon@arm.com>
Tue, 20 Jun 2017 11:42:59 +0000 (12:42 +0100)
commitbb4322f74340de578bc61ed0cfb9690ddeb9ef76
tree6977efdb0f0aa4d2fc60fbc10604a9708ab5af91
parentbb4891a6c3551f27fa4d548b87a66c258bdb100b
arm64: signal: factor out signal frame record allocation

This patch factors out the allocator for signal frame optional
records into a separate function, to ensure consistency and
facilitate later expansion.

No overrun checking is currently done, because the allocation is in
user memory and anyway the kernel never tries to allocate enough
space in the signal frame yet for an overrun to occur.  This
behaviour will be refined in future patches.

The approach taken in this patch to allocation of the terminator
record is not very clean: this will also be replaced in subsequent
patches.

For future extension, a comment is added in sigcontext.h
documenting the current static allocations in __reserved[].  This
will be important for determining under what circumstances
userspace may or may not see an expanded signal frame.

Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Dave Martin <Dave.Martin@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
arch/arm64/include/uapi/asm/sigcontext.h
arch/arm64/kernel/signal.c