|
@@ -117,6 +117,9 @@ void __perf_evlist__set_leader(struct list_head *list)
|
|
|
struct perf_evsel *evsel, *leader;
|
|
struct perf_evsel *evsel, *leader;
|
|
|
|
|
|
|
|
leader = list_entry(list->next, struct perf_evsel, node);
|
|
leader = list_entry(list->next, struct perf_evsel, node);
|
|
|
|
|
+ evsel = list_entry(list->prev, struct perf_evsel, node);
|
|
|
|
|
+
|
|
|
|
|
+ leader->nr_members = evsel->idx - leader->idx + 1;
|
|
|
|
|
|
|
|
list_for_each_entry(evsel, list, node) {
|
|
list_for_each_entry(evsel, list, node) {
|
|
|
if (evsel != leader)
|
|
if (evsel != leader)
|
|
@@ -126,8 +129,10 @@ void __perf_evlist__set_leader(struct list_head *list)
|
|
|
|
|
|
|
|
void perf_evlist__set_leader(struct perf_evlist *evlist)
|
|
void perf_evlist__set_leader(struct perf_evlist *evlist)
|
|
|
{
|
|
{
|
|
|
- if (evlist->nr_entries)
|
|
|
|
|
|
|
+ if (evlist->nr_entries) {
|
|
|
|
|
+ evlist->nr_groups = evlist->nr_entries > 1 ? 1 : 0;
|
|
|
__perf_evlist__set_leader(&evlist->entries);
|
|
__perf_evlist__set_leader(&evlist->entries);
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
int perf_evlist__add_default(struct perf_evlist *evlist)
|
|
int perf_evlist__add_default(struct perf_evlist *evlist)
|