HomeFreeBSD

arm64: handle watchpoint exceptions from EL0

Description

arm64: handle watchpoint exceptions from EL0

This is a prerequisite to allowing the use of hardware watchpoints for
userspace debuggers.

This is also a slight departure from the x86 behaviour, since si_addr
returns the data address that triggered the watchpoint, not the
address of the instruction that was executed. Otherwise, there is no
straightforward way for the application to determine which watchpoint
was triggered. Make a note of this in the siginfo(3) man page.

Reviewed by: jhb, markj (earlier version)
Tested by: Michał Górny (mgorny@gentoo.org)
Sponsored by: The FreeBSD Foundation

(cherry picked from commit bd012c71592323d957b409bb5e0cf7940729650e)

Details

Provenance
mhorneAuthored on Feb 5 2021, 9:46 PM
Parents
rG8837e9c54072: arm64: validate breakpoint registers
Branches
Unknown
Tags
Unknown