Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull perf tool fixes from Thomas Gleixner: "A small set of fixes for perf tool: - synchronize the i915 drm header to avoid the 'out of date' warning - make sure that perf trace cleans up its temporary files on exit - unbreak the build with newer flex versions - add missing braces in the eBPF parsing rules" * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: tooling/headers: Sync the tools/include/uapi/drm/i915_drm.h UAPI header perf trace: Call machine__exit() at exit perf tools: Fix eBPF event specification parsing perf tools: Add "reject" option for parse-events.l
This commit is contained in:
commit
69581c7472
@ -829,6 +829,7 @@ struct drm_i915_gem_exec_fence {
|
||||
|
||||
#define I915_EXEC_FENCE_WAIT (1<<0)
|
||||
#define I915_EXEC_FENCE_SIGNAL (1<<1)
|
||||
#define __I915_EXEC_FENCE_UNKNOWN_FLAGS (-(I915_EXEC_FENCE_SIGNAL << 1))
|
||||
__u32 flags;
|
||||
};
|
||||
|
||||
|
@ -1138,6 +1138,14 @@ static int trace__symbols_init(struct trace *trace, struct perf_evlist *evlist)
|
||||
return err;
|
||||
}
|
||||
|
||||
static void trace__symbols__exit(struct trace *trace)
|
||||
{
|
||||
machine__exit(trace->host);
|
||||
trace->host = NULL;
|
||||
|
||||
symbol__exit();
|
||||
}
|
||||
|
||||
static int syscall__alloc_arg_fmts(struct syscall *sc, int nr_args)
|
||||
{
|
||||
int idx;
|
||||
@ -2481,6 +2489,8 @@ out_disable:
|
||||
}
|
||||
|
||||
out_delete_evlist:
|
||||
trace__symbols__exit(trace);
|
||||
|
||||
perf_evlist__delete(evlist);
|
||||
trace->evlist = NULL;
|
||||
trace->live = false;
|
||||
|
@ -5,6 +5,7 @@
|
||||
%option stack
|
||||
%option bison-locations
|
||||
%option yylineno
|
||||
%option reject
|
||||
|
||||
%{
|
||||
#include <errno.h>
|
||||
@ -339,8 +340,8 @@ r{num_raw_hex} { return raw(yyscanner); }
|
||||
{num_hex} { return value(yyscanner, 16); }
|
||||
|
||||
{modifier_event} { return str(yyscanner, PE_MODIFIER_EVENT); }
|
||||
{bpf_object} { if (!isbpf(yyscanner)) USER_REJECT; return str(yyscanner, PE_BPF_OBJECT); }
|
||||
{bpf_source} { if (!isbpf(yyscanner)) USER_REJECT; return str(yyscanner, PE_BPF_SOURCE); }
|
||||
{bpf_object} { if (!isbpf(yyscanner)) { USER_REJECT }; return str(yyscanner, PE_BPF_OBJECT); }
|
||||
{bpf_source} { if (!isbpf(yyscanner)) { USER_REJECT }; return str(yyscanner, PE_BPF_SOURCE); }
|
||||
{name} { return pmu_str_check(yyscanner); }
|
||||
"/" { BEGIN(config); return '/'; }
|
||||
- { return '-'; }
|
||||
|
Loading…
Reference in New Issue
Block a user