SIGSEGV fills si_addr only for memory access faults. Add a note to clarify.
Signed-off-by: Yu-cheng Yu <[email protected]> Cc: Alejandro Colomar <[email protected]> Cc: Michael Kerrisk <[email protected]> Cc: Andy Lutomirski <[email protected]> Cc: Borislav Petkov <[email protected]> Cc: Dave Hansen <[email protected]> Cc: Florian Weimer <[email protected]> Cc: "H.J. Lu" <[email protected]> Cc: [email protected] Cc: [email protected] Link: https://lore.kernel.org/linux-api/[email protected]/ --- man2/sigaction.2 | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/man2/sigaction.2 b/man2/sigaction.2 index 49a30f11e..bea884a23 100644 --- a/man2/sigaction.2 +++ b/man2/sigaction.2 @@ -467,7 +467,7 @@ and .BR SIGTRAP fill in .I si_addr -with the address of the fault. +with the address of the fault (see notes). On some architectures, these signals also fill in the .I si_trapno @@ -955,6 +955,11 @@ It is not possible to block .IR sa_mask ). Attempts to do so are silently ignored. .PP +In a +.B SIGSEGV, +if the fault is a memory access fault, si_addr is filled with the address +causing the fault, otherwise it is not filled. +.PP See .BR sigsetops (3) for details on manipulating signal sets. -- 2.21.0

