libside: Giving the preprocessor a break with a tracer-agnostic instrumentation API - Mathieu Desnoy
Channel: Linux Plumbers Conference
Date: 2023-11-29

Discuss the new libside [1] API/ABI which allows a kernel tracer and many user-space tracers to attach to static and dynamic instrumentation of user-space application.

This user-space library exposes a type system and a set of macros to help applications declare their instrumentation and insert instrumentation calls. It exposes APIs to kernel and user-space tracers so they can list and connect to the instrumentation, and conditionally enables instrumentation when at least one tracer is using it.

This is relevant in the context of User Events which was recently merged into the Linux kernel.

[1] https://github.com/efficios/libside