1STRUCT UTRACE_ENGINE(9) utrace core API STRUCT UTRACE_ENGINE(9)
2
3
4
6 struct_utrace_engine - per-engine structure
7
9 struct utrace_engine {
10 const struct utrace_engine_ops * ops;
11 void * data;
12 unsigned long flags;
13 };
14
16 ops
17
18 struct utrace_engine_ops pointer passed to utrace_attach_task
19
20 data
21 engine-private void * passed to utrace_attach_task
22
23 flags
24 event mask set by utrace_set_events plus internal flag bits
25
27 The task itself never has to worry about engines detaching while it´s
28 doing event callbacks. These structures are removed from the task´s
29 active list only when it´s stopped, or by the task itself.
30
31 utrace_engine_get and utrace_engine_put maintain a reference count.
32 When it drops to zero, the structure is freed. One reference is held
33 implicitly while the engine is attached to its task.
34
35
36
37Kernel Hackers Manual 2.6. June 2019 STRUCT UTRACE_ENGINE(9)