libperf: Add perf_evlist__remove() function
Adding perf_evlist__remove() function to remove a perf_evsel from a perf_evlist struct. Signed-off-by: Jiri Olsa <jolsa@kernel.org> Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com> Cc: Alexey Budankov <alexey.budankov@linux.intel.com> Cc: Andi Kleen <ak@linux.intel.com> Cc: Michael Petlan <mpetlan@redhat.com> Cc: Namhyung Kim <namhyung@kernel.org> Cc: Peter Zijlstra <peterz@infradead.org> Link: http://lkml.kernel.org/r/20190721112506.12306-41-jolsa@kernel.org Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
parent
9a5edde6d3
commit
52e22fb8af
|
@ -14,3 +14,9 @@ void perf_evlist__add(struct perf_evlist *evlist,
|
|||
{
|
||||
list_add_tail(&evsel->node, &evlist->entries);
|
||||
}
|
||||
|
||||
void perf_evlist__remove(struct perf_evlist *evlist,
|
||||
struct perf_evsel *evsel)
|
||||
{
|
||||
list_del_init(&evsel->node);
|
||||
}
|
||||
|
|
|
@ -10,5 +10,7 @@ struct perf_evsel;
|
|||
LIBPERF_API void perf_evlist__init(struct perf_evlist *evlist);
|
||||
LIBPERF_API void perf_evlist__add(struct perf_evlist *evlist,
|
||||
struct perf_evsel *evsel);
|
||||
LIBPERF_API void perf_evlist__remove(struct perf_evlist *evlist,
|
||||
struct perf_evsel *evsel);
|
||||
|
||||
#endif /* __LIBPERF_EVLIST_H */
|
||||
|
|
|
@ -12,6 +12,7 @@ LIBPERF_0.0.1 {
|
|||
perf_evsel__init;
|
||||
perf_evlist__init;
|
||||
perf_evlist__add;
|
||||
perf_evlist__remove;
|
||||
local:
|
||||
*;
|
||||
};
|
||||
|
|
|
@ -194,7 +194,7 @@ void evlist__add(struct evlist *evlist, struct evsel *entry)
|
|||
void evlist__remove(struct evlist *evlist, struct evsel *evsel)
|
||||
{
|
||||
evsel->evlist = NULL;
|
||||
list_del_init(&evsel->core.node);
|
||||
perf_evlist__remove(&evlist->core, &evsel->core);
|
||||
evlist->nr_entries -= 1;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue