diff options
Diffstat (limited to 'tools/perf/builtin-sched.c')
-rw-r--r-- | tools/perf/builtin-sched.c | 17 |
1 files changed, 6 insertions, 11 deletions
diff --git a/tools/perf/builtin-sched.c b/tools/perf/builtin-sched.c index aef6ed0e119..be7bc926471 100644 --- a/tools/perf/builtin-sched.c +++ b/tools/perf/builtin-sched.c | |||
@@ -1641,19 +1641,10 @@ static int process_sample_event(event_t *event, struct perf_session *session) | |||
1641 | return 0; | 1641 | return 0; |
1642 | } | 1642 | } |
1643 | 1643 | ||
1644 | static int process_lost_event(event_t *event __used, | ||
1645 | struct perf_session *session __used) | ||
1646 | { | ||
1647 | nr_lost_chunks++; | ||
1648 | nr_lost_events += event->lost.lost; | ||
1649 | |||
1650 | return 0; | ||
1651 | } | ||
1652 | |||
1653 | static struct perf_event_ops event_ops = { | 1644 | static struct perf_event_ops event_ops = { |
1654 | .sample = process_sample_event, | 1645 | .sample = process_sample_event, |
1655 | .comm = event__process_comm, | 1646 | .comm = event__process_comm, |
1656 | .lost = process_lost_event, | 1647 | .lost = event__process_lost, |
1657 | .ordered_samples = true, | 1648 | .ordered_samples = true, |
1658 | }; | 1649 | }; |
1659 | 1650 | ||
@@ -1664,8 +1655,12 @@ static int read_events(void) | |||
1664 | if (session == NULL) | 1655 | if (session == NULL) |
1665 | return -ENOMEM; | 1656 | return -ENOMEM; |
1666 | 1657 | ||
1667 | if (perf_session__has_traces(session, "record -R")) | 1658 | if (perf_session__has_traces(session, "record -R")) { |
1668 | err = perf_session__process_events(session, &event_ops); | 1659 | err = perf_session__process_events(session, &event_ops); |
1660 | nr_events = session->hists.stats.nr_events[0]; | ||
1661 | nr_lost_events = session->hists.stats.total_lost; | ||
1662 | nr_lost_chunks = session->hists.stats.nr_events[PERF_RECORD_LOST]; | ||
1663 | } | ||
1669 | 1664 | ||
1670 | perf_session__delete(session); | 1665 | perf_session__delete(session); |
1671 | return err; | 1666 | return err; |