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.
Tags
Referenced Files
Unknown Object (File)
Dec 20 2023, 1:20 AM
Unknown Object (File)
Aug 2 2023, 6:41 PM
Unknown Object (File)
Jul 15 2023, 10:40 PM
Unknown Object (File)
Jan 15 2023, 6:12 PM
Unknown Object (File)
Dec 12 2022, 1:06 PM
Unknown Object (File)
Dec 10 2022, 5:29 AM
Unknown Object (File)
Mar 21 2017, 10:29 AM
Unknown Object (File)
Feb 27 2017, 11:19 PM
Subscribers

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
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.