Linux Perf
|
#include <Python.h>
#include <structmember.h>
#include <inttypes.h>
#include <poll.h>
#include <linux/err.h>
#include "evlist.h"
#include "callchain.h"
#include "evsel.h"
#include "event.h"
#include "cpumap.h"
#include "print_binary.h"
#include "thread_map.h"
Go to the source code of this file.
Classes | |
struct | pyrf_event |
struct | pyrf_cpu_map |
struct | pyrf_thread_map |
struct | pyrf_evsel |
struct | pyrf_evlist |
Macros | |
#define | _PyUnicode_FromString(arg) PyString_FromString(arg) |
#define | _PyUnicode_AsString(arg) PyString_AsString(arg) |
#define | _PyUnicode_FromFormat(...) PyString_FromFormat(__VA_ARGS__) |
#define | _PyLong_FromLong(arg) PyInt_FromLong(arg) |
#define | Py_TYPE(ob) (((PyObject*)(ob))->ob_type) |
#define | PyVarObject_HEAD_INIT(type, size) PyObject_HEAD_INIT(type) size, |
#define | member_def(type, member, ptype, help) |
#define | sample_member_def(name, member, ptype, help) |
#define | sample_members |
#define | PERF_CONST(name) { #name, PERF_##name } |
Functions | |
int | parse_callchain_record (const char *arg __maybe_unused, struct callchain_param *param __maybe_unused) |
int | eprintf (int level, int var, const char *fmt,...) |
PyMODINIT_FUNC | initperf (void) |
static PyObject * | pyrf_mmap_event__repr (struct pyrf_event *pevent) |
static PyObject * | pyrf_task_event__repr (struct pyrf_event *pevent) |
static PyObject * | pyrf_comm_event__repr (struct pyrf_event *pevent) |
static PyObject * | pyrf_throttle_event__repr (struct pyrf_event *pevent) |
static PyObject * | pyrf_lost_event__repr (struct pyrf_event *pevent) |
static PyObject * | pyrf_read_event__repr (struct pyrf_event *pevent) |
static PyObject * | pyrf_sample_event__repr (struct pyrf_event *pevent) |
static bool | is_tracepoint (struct pyrf_event *pevent) |
static PyObject * | tracepoint_field (struct pyrf_event *pe, struct format_field *field) |
static PyObject * | get_tracepoint_field (struct pyrf_event *pevent, PyObject *attr_name) |
static PyObject * | pyrf_sample_event__getattro (struct pyrf_event *pevent, PyObject *attr_name) |
static PyObject * | pyrf_context_switch_event__repr (struct pyrf_event *pevent) |
static int | pyrf_event__setup_types (void) |
static PyObject * | pyrf_event__new (union perf_event *event) |
static int | pyrf_cpu_map__init (struct pyrf_cpu_map *pcpus, PyObject *args, PyObject *kwargs) |
static void | pyrf_cpu_map__delete (struct pyrf_cpu_map *pcpus) |
static Py_ssize_t | pyrf_cpu_map__length (PyObject *obj) |
static PyObject * | pyrf_cpu_map__item (PyObject *obj, Py_ssize_t i) |
static int | pyrf_cpu_map__setup_types (void) |
static int | pyrf_thread_map__init (struct pyrf_thread_map *pthreads, PyObject *args, PyObject *kwargs) |
static void | pyrf_thread_map__delete (struct pyrf_thread_map *pthreads) |
static Py_ssize_t | pyrf_thread_map__length (PyObject *obj) |
static PyObject * | pyrf_thread_map__item (PyObject *obj, Py_ssize_t i) |
static int | pyrf_thread_map__setup_types (void) |
static int | pyrf_evsel__init (struct pyrf_evsel *pevsel, PyObject *args, PyObject *kwargs) |
static void | pyrf_evsel__delete (struct pyrf_evsel *pevsel) |
static PyObject * | pyrf_evsel__open (struct pyrf_evsel *pevsel, PyObject *args, PyObject *kwargs) |
static int | pyrf_evsel__setup_types (void) |
static int | pyrf_evlist__init (struct pyrf_evlist *pevlist, PyObject *args, PyObject *kwargs __maybe_unused) |
static void | pyrf_evlist__delete (struct pyrf_evlist *pevlist) |
static PyObject * | pyrf_evlist__mmap (struct pyrf_evlist *pevlist, PyObject *args, PyObject *kwargs) |
static PyObject * | pyrf_evlist__poll (struct pyrf_evlist *pevlist, PyObject *args, PyObject *kwargs) |
static PyObject * | pyrf_evlist__get_pollfd (struct pyrf_evlist *pevlist, PyObject *args __maybe_unused, PyObject *kwargs __maybe_unused) |
static PyObject * | pyrf_evlist__add (struct pyrf_evlist *pevlist, PyObject *args, PyObject *kwargs __maybe_unused) |
static PyObject * | pyrf_evlist__read_on_cpu (struct pyrf_evlist *pevlist, PyObject *args, PyObject *kwargs) |
static PyObject * | pyrf_evlist__open (struct pyrf_evlist *pevlist, PyObject *args, PyObject *kwargs) |
static Py_ssize_t | pyrf_evlist__length (PyObject *obj) |
static PyObject * | pyrf_evlist__item (PyObject *obj, Py_ssize_t i) |
static int | pyrf_evlist__setup_types (void) |
static PyObject * | pyrf__tracepoint (struct pyrf_evsel *pevsel, PyObject *args, PyObject *kwargs) |
void | test_attr__open (struct perf_event_attr *attr, pid_t pid, int cpu, int fd, int group_fd, unsigned long flags) |
Variables | |
struct callchain_param | callchain_param |
int | verbose |
static char | pyrf_mmap_event__doc [] = PyDoc_STR("perf mmap event object.") |
static PyMemberDef | pyrf_mmap_event__members [] |
static PyTypeObject | pyrf_mmap_event__type |
static char | pyrf_task_event__doc [] = PyDoc_STR("perf task (fork/exit) event object.") |
static PyMemberDef | pyrf_task_event__members [] |
static PyTypeObject | pyrf_task_event__type |
static char | pyrf_comm_event__doc [] = PyDoc_STR("perf comm event object.") |
static PyMemberDef | pyrf_comm_event__members [] |
static PyTypeObject | pyrf_comm_event__type |
static char | pyrf_throttle_event__doc [] = PyDoc_STR("perf throttle event object.") |
static PyMemberDef | pyrf_throttle_event__members [] |
static PyTypeObject | pyrf_throttle_event__type |
static char | pyrf_lost_event__doc [] = PyDoc_STR("perf lost event object.") |
static PyMemberDef | pyrf_lost_event__members [] |
static PyTypeObject | pyrf_lost_event__type |
static char | pyrf_read_event__doc [] = PyDoc_STR("perf read event object.") |
static PyMemberDef | pyrf_read_event__members [] |
static PyTypeObject | pyrf_read_event__type |
static char | pyrf_sample_event__doc [] = PyDoc_STR("perf sample event object.") |
static PyMemberDef | pyrf_sample_event__members [] |
static PyTypeObject | pyrf_sample_event__type |
static char | pyrf_context_switch_event__doc [] = PyDoc_STR("perf context_switch event object.") |
static PyMemberDef | pyrf_context_switch_event__members [] |
static PyTypeObject | pyrf_context_switch_event__type |
static PyTypeObject * | pyrf_event__type [] |
static PySequenceMethods | pyrf_cpu_map__sequence_methods |
static char | pyrf_cpu_map__doc [] = PyDoc_STR("cpu map object.") |
static PyTypeObject | pyrf_cpu_map__type |
static PySequenceMethods | pyrf_thread_map__sequence_methods |
static char | pyrf_thread_map__doc [] = PyDoc_STR("thread map object.") |
static PyTypeObject | pyrf_thread_map__type |
static PyMethodDef | pyrf_evsel__methods [] |
static char | pyrf_evsel__doc [] = PyDoc_STR("perf event selector list object.") |
static PyTypeObject | pyrf_evsel__type |
static PyMethodDef | pyrf_evlist__methods [] |
static PySequenceMethods | pyrf_evlist__sequence_methods |
static char | pyrf_evlist__doc [] = PyDoc_STR("perf event selector list object.") |
static PyTypeObject | pyrf_evlist__type |
struct { | |
const char * name | |
int value | |
} | perf__constants [] |
static PyMethodDef | perf__methods [] |
#define _PyUnicode_FromFormat | ( | ... | ) | PyString_FromFormat(__VA_ARGS__) |
#define _PyUnicode_FromString | ( | arg | ) | PyString_FromString(arg) |
#define member_def | ( | type, | |
member, | |||
ptype, | |||
help | |||
) |
#define sample_member_def | ( | name, | |
member, | |||
ptype, | |||
help | |||
) |
#define sample_members |
|
static |
PyMODINIT_FUNC initperf | ( | void | ) |
|
static |
int parse_callchain_record | ( | const char *arg | __maybe_unused, |
struct callchain_param *param | __maybe_unused | ||
) |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
void test_attr__open | ( | struct perf_event_attr * | attr, |
pid_t | pid, | ||
int | cpu, | ||
int | fd, | ||
int | group_fd, | ||
unsigned long | flags | ||
) |
|
static |
struct callchain_param callchain_param |
struct { ... } perf__constants[] |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |