arm64: signal: don't force known signals to SIGKILL
Since commit:a7e6f1ca90
("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:a7e6f1ca90
("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>
This commit is contained in:
parent
800cb2e553
commit
b2d71b3cda
|
@ -366,7 +366,7 @@ void force_signal_inject(int signal, int code, unsigned long address)
|
|||
}
|
||||
|
||||
/* Force signals we don't understand to SIGKILL */
|
||||
if (WARN_ON(signal != SIGKILL ||
|
||||
if (WARN_ON(signal != SIGKILL &&
|
||||
siginfo_layout(signal, code) != SIL_FAULT)) {
|
||||
signal = SIGKILL;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue