HomeFreeBSD

Add further clarification on si_addr and si_trapno.

Description

Add further clarification on si_addr and si_trapno.

  • In the initial description of si_addr, do not claim that it is always the faulting instruction.
  • For si_addr, document that it is generally set to the PC for synchronous signals, but that it can be set to the the address of the faulting memory reference for some signals including SIGSEGV and SIGBUS. In particular, while SIGSEGV generally sets si_addr to the faulting memory reference, SIGBUS can vary. On some platforms, some SIGBUS signals set si_addr to the PC and other SIGBUS signals set si_addr to the faulting address depending on the specific hardware exception.
  • For si_trapno, synchronous signals should set this to some value.

Reviewed by: kib
Sponsored by: DARPA
Differential Revision: https://reviews.freebsd.org/D25777

Details

Provenance
jhbAuthored on
Reviewer
kib
Differential Revision
D25777: Add further clarification on si_addr and si_trapno.
Parents
rS363651: MFC r363363, r363416: geli(8): new example with file based storage
Branches
Unknown
Tags
Unknown