arm64: signal: don't force known signals to SIGKILL
authorMark Rutland <mark.rutland@arm.com>
Mon, 16 Apr 2018 15:45:01 +0000 (16:45 +0100)
committerCatalin Marinas <catalin.marinas@arm.com>
Wed, 18 Apr 2018 14:13:27 +0000 (15:13 +0100)
commitb2d71b3cda19831ec67f49d7c6ba0214d9367b29
tree3fe300429e6d585372fe6ac1c5048b0e5283e5ba
parent800cb2e553d44541b83aa3ec45d9839385fe8ab6
arm64: signal: don't force known signals to SIGKILL

Since commit:

  a7e6f1ca90354a31 ("arm64: signal: Force SIGKILL for unknown signals in force_signal_inject")

... any signal which is not SIGKILL will be upgraded to a SIGKILL be
force_signal_inject(). This includes signals we do expect, such as
SIGILL triggered by do_undefinstr().

Fix the check to use a logical AND rather than a logical OR, permitting
signals whose layout is SIL_FAULT.

Fixes: a7e6f1ca90354a31 ("arm64: signal: Force SIGKILL for unknown signals in force_signal_inject")
Cc: Will Deacon <will.deacon@arm.com>
Reviewed-by: Dave Martin <Dave.Martin@arm.com>
Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
arch/arm64/kernel/traps.c