Check invop of dtrace inside exception.S to reduce overhead to
call into C code. also check this earlier also reduce unnecessary
overhead.
Details
Details
- Reviewers
andrew gnn bz br rwatson - Group Reviewers
Contributor Reviewers (ports) - Commits
- rS291852: Move the check to see if we are tracing a function with the DTrace Function
Diff Detail
Diff Detail
- Repository
- rS FreeBSD src repository - subversion
- Lint
Lint Not Applicable - Unit
Tests Not Applicable
Event Timeline
Comment Actions
You will also need to adjust the number of frames to skip in DTrace when running a stack trace as there is not one fewer.
sys/arm/arm/exception.S | ||
---|---|---|
374 ↗ | (On Diff #10468) | This should use PSR_USR32_MODE |
378–385 ↗ | (On Diff #10468) | In l41BSD we moved this to the C handler |
388 ↗ | (On Diff #10468) | Move FBT_PATCHVAL from sys/cddl/dev/fbt/arm/fbt_isa.c to trap.h and use this here. You should also rename it to something like FBT_BREAKPOINT. We need to be able to tell the difference between DTrace and DDB breakpoint instructions. |
Comment Actions
it can enable fbt under VERSATILEPB. But still has issue when I try to sysctl kern.kdb.enter=1, i hit kernel stack overflow.
sys/arm/arm/exception.S | ||
---|---|---|
378–385 ↗ | (On Diff #10468) | we have to do here since I want to check the INSN in assembly. |