Arbitrary Instruction Tracing with DTrace - Christos Margiolis - EuroBSDcon 2023
Channel: EuroBSDcon
Date: 2023-10-02

Christos Margiolis:  Arbitrary Instruction Tracing with DTrace 
"kinst" is a new DTrace provider co-authored by Christos Margiolis and Mark Johnston for the FreeBSD operating system, that allows for arbitrary instruction tracing in the kernel. Inspired by the FBT provider, kinst extends its functionality to be able to trace not just the entry and return points of a function, but any instruction in it. This mechanism is useful for more fine-grained tracing, as well as tracing inline functions, a feature lacking from FBT.

The talk will cover the high-level ideas behind kinst's implementation, that is, the mechanisms used to instrument arbitrary kernel instructions, the obstacles of architecture-dependent code parts, and how inline function tracing works. It will also include examples of how kinst is used, as well as when it's useful.

Christos Margiolis:
Christos is a FreeBSD committer from Athens, Greece. He has been active in The FreeBSD Project since 2021 and has worked twice as a Google Summer of Code student, as well as an independent contractor. His main work so far revolves around DTrace.