]> git.baikalelectronics.ru Git - kernel.git/commit
signal: define the SA_EXPOSE_TAGBITS bit in sa_flags
authorPeter Collingbourne <pcc@google.com>
Fri, 20 Nov 2020 20:33:45 +0000 (12:33 -0800)
committerEric W. Biederman <ebiederm@xmission.com>
Mon, 23 Nov 2020 16:31:06 +0000 (10:31 -0600)
commit41ca47533477f69bedd194ccd67738eeb90c9da8
tree72e13727569f07efa33909831e2de1e7e9743bef
parent67aa6750cd7dc3fbcc05eac3f317eaa1ce634b47
signal: define the SA_EXPOSE_TAGBITS bit in sa_flags

Architectures that support address tagging, such as arm64, may want to
expose fault address tag bits to the signal handler to help diagnose
memory errors. However, these bits have not been previously set,
and their presence may confuse unaware user applications. Therefore,
introduce a SA_EXPOSE_TAGBITS flag bit in sa_flags that a signal
handler may use to explicitly request that the bits are set.

The generic signal handler APIs expect to receive tagged addresses.
Architectures may specify how to untag addresses in the case where
SA_EXPOSE_TAGBITS is clear by defining the arch_untagged_si_addr
function.

Signed-off-by: Peter Collingbourne <pcc@google.com>
Acked-by: "Eric W. Biederman" <ebiederm@xmission.com>
Link: https://linux-review.googlesource.com/id/I16dd0ed2081f091fce97be0190cb8caa874c26cb
Link: https://lkml.kernel.org/r/13cf24d00ebdd8e1f55caf1821c7c29d54100191.1605904350.git.pcc@google.com
Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
include/linux/signal.h
include/linux/signal_types.h
include/uapi/asm-generic/signal-defs.h
kernel/signal.c