mirror of
https://github.com/varun-r-mallya/sysprof.git
synced 2025-12-31 20:36:25 +00:00
This is useful because we might not have access to kernel symbols from user applications which are not root. Various distributions are starting to censor kernel addresses without root. This allows the clients to fetch the symbol addresses without having to be root themselves.
40 lines
1.3 KiB
XML
40 lines
1.3 KiB
XML
<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN"
|
|
"http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
|
|
<node>
|
|
<interface name="org.gnome.Sysprof2">
|
|
<!--
|
|
PerfEventOpen:
|
|
@options: key-value pair of attributes for the perf_event_open() syscall.
|
|
@pid: the process id to monitor, or -1 for system-wide.
|
|
@cpu: affinity to cpu.
|
|
@flags: flags for perf_event_open() syscall.
|
|
@perf_stream_fd: (out): A fd to communicate with perf.
|
|
|
|
Performs the perf_event_open() syscall with elevated privileges and passes
|
|
the resulting fd back to the calling process.
|
|
-->
|
|
<method name="PerfEventOpen">
|
|
<arg name="options" type="a{sv}" direction="in"/>
|
|
<arg name="pid" type="i" direction="in"/>
|
|
<arg name="cpu" type="i" direction="in"/>
|
|
<arg name="flags" type="t" direction="in"/>
|
|
<arg name="perf_stream_fd" type="h" direction="out"/>
|
|
</method>
|
|
|
|
<!--
|
|
GetKernelSymbols:
|
|
|
|
Loads the name, type, and address of Linux kernel symbols. This is useful
|
|
if your system does not provide access to /proc/kallsyms to non-root users.
|
|
|
|
Returns: an array of (tys) tuples. t is the address, y is the type, and s
|
|
is the name.
|
|
|
|
Since: 3.28
|
|
-->
|
|
<method name="GetKernelSymbols">
|
|
<arg name="symbols" type="a(tys)" direction="out"/>
|
|
</method>
|
|
</interface>
|
|
</node>
|