Page MenuHomeFreeBSD

Don't allow FBT to recurse into FBT functions when DTrace is built as part of the kernel
Needs ReviewPublic

Authored by rwatson on Oct 4 2015, 11:43 AM.

Details

Reviewers
andrew
bz
br
Summary

Normally, DTrace avoids recursion into itself by recognising functions in its own kernel module. On ARMv[67], when building DTrace into the kernel itself, the normal further rule of not entering functions prefixed with dtrace_ is insufficient for FBT, which also contains functions prefixed with fbt_. This change blocks that recursion by disallowing FBT instrumentation of fbt_ functions.

Test Plan

Deployed in Cambridge L41 2014-2015.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Skipped
Unit
Unit Tests Skipped

Event Timeline

rwatson retitled this revision from to Don't allow FBT to recurse into FBT functions when DTrace is built as part of the kernel.
rwatson updated this object.
rwatson edited the test plan for this revision. (Show Details)
rwatson added reviewers: andrew, br, bz.
rwatson set the repository for this revision to rS FreeBSD src repository - subversion.
rwatson added a project: ARM.

Updated patch generated against Subversion, and contains more context. No functional change.

This should be replaced with fbt_excluded. Ruslan added it for arm64, but it doesn't seem to be used elsewhere. This will mean we can remove the dtrace_ and __ cased above.