d11994314b
Much of the signal code takes a pt_regs on which it operates. Over time the signal code has needed to know more about the thread than what pt_regs can supply, this information is obtained as needed by using 'current'. This approach is not strictly incorrect however it does mean that there is now a hard requirement that the pt_regs being passed around does belong to current, this is never checked. A safer approach is for the majority of the signal functions to take a task_struct from which they can obtain pt_regs and any other information they need. The caveat that the task_struct they are passed must be current doesn't go away but can more easily be checked for. Functions called from outside powerpc signal code are passed a pt_regs and they can confirm that the pt_regs is that of current and pass current to other functions, furthurmore, powerpc signal functions can check that the task_struct they are passed is the same as current avoiding possible corruption of current (or the task they are passed) if this assertion ever fails. CC: paulus@samba.org Signed-off-by: Cyril Bur <cyrilbur@gmail.com> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
9 lines
186 B
C
9 lines
186 B
C
#ifndef _ASM_POWERPC_SIGNAL_H
|
|
#define _ASM_POWERPC_SIGNAL_H
|
|
|
|
#define __ARCH_HAS_SA_RESTORER
|
|
#include <uapi/asm/signal.h>
|
|
#include <uapi/asm/ptrace.h>
|
|
|
|
#endif /* _ASM_POWERPC_SIGNAL_H */
|