mirror of
https://github.com/FEX-Emu/linux.git
synced 2025-02-05 10:46:58 +00:00
4e319027a7
Header files of libtraceevent or no longer local headers. Thus, use default path notation for them. Also removing extra traceevent include path and instead handle this similar to liblk. Signed-off-by: Robert Richter <robert.richter@linaro.org> Signed-off-by: Robert Richter <rric@kernel.org> Cc: Ingo Molnar <mingo@kernel.org> Cc: Jiri Olsa <jolsa@redhat.com> Cc: Robert Richter <rric@kernel.org> Link: http://lkml.kernel.org/r/1370964558-8599-1-git-send-email-rric@kernel.org Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
85 lines
1.9 KiB
C
85 lines
1.9 KiB
C
#include <traceevent/event-parse.h>
|
|
#include "evsel.h"
|
|
#include "tests.h"
|
|
|
|
static int perf_evsel__test_field(struct perf_evsel *evsel, const char *name,
|
|
int size, bool should_be_signed)
|
|
{
|
|
struct format_field *field = perf_evsel__field(evsel, name);
|
|
int is_signed;
|
|
int ret = 0;
|
|
|
|
if (field == NULL) {
|
|
pr_debug("%s: \"%s\" field not found!\n", evsel->name, name);
|
|
return -1;
|
|
}
|
|
|
|
is_signed = !!(field->flags | FIELD_IS_SIGNED);
|
|
if (should_be_signed && !is_signed) {
|
|
pr_debug("%s: \"%s\" signedness(%d) is wrong, should be %d\n",
|
|
evsel->name, name, is_signed, should_be_signed);
|
|
ret = -1;
|
|
}
|
|
|
|
if (field->size != size) {
|
|
pr_debug("%s: \"%s\" size (%d) should be %d!\n",
|
|
evsel->name, name, field->size, size);
|
|
ret = -1;
|
|
}
|
|
|
|
return ret;
|
|
}
|
|
|
|
int test__perf_evsel__tp_sched_test(void)
|
|
{
|
|
struct perf_evsel *evsel = perf_evsel__newtp("sched", "sched_switch", 0);
|
|
int ret = 0;
|
|
|
|
if (evsel == NULL) {
|
|
pr_debug("perf_evsel__new\n");
|
|
return -1;
|
|
}
|
|
|
|
if (perf_evsel__test_field(evsel, "prev_comm", 16, true))
|
|
ret = -1;
|
|
|
|
if (perf_evsel__test_field(evsel, "prev_pid", 4, true))
|
|
ret = -1;
|
|
|
|
if (perf_evsel__test_field(evsel, "prev_prio", 4, true))
|
|
ret = -1;
|
|
|
|
if (perf_evsel__test_field(evsel, "prev_state", 8, true))
|
|
ret = -1;
|
|
|
|
if (perf_evsel__test_field(evsel, "next_comm", 16, true))
|
|
ret = -1;
|
|
|
|
if (perf_evsel__test_field(evsel, "next_pid", 4, true))
|
|
ret = -1;
|
|
|
|
if (perf_evsel__test_field(evsel, "next_prio", 4, true))
|
|
ret = -1;
|
|
|
|
perf_evsel__delete(evsel);
|
|
|
|
evsel = perf_evsel__newtp("sched", "sched_wakeup", 0);
|
|
|
|
if (perf_evsel__test_field(evsel, "comm", 16, true))
|
|
ret = -1;
|
|
|
|
if (perf_evsel__test_field(evsel, "pid", 4, true))
|
|
ret = -1;
|
|
|
|
if (perf_evsel__test_field(evsel, "prio", 4, true))
|
|
ret = -1;
|
|
|
|
if (perf_evsel__test_field(evsel, "success", 4, true))
|
|
ret = -1;
|
|
|
|
if (perf_evsel__test_field(evsel, "target_cpu", 4, true))
|
|
ret = -1;
|
|
|
|
return ret;
|
|
}
|