diff options
Diffstat (limited to 'tools/perf')
-rw-r--r-- | tools/perf/util/probe-event.c | 5 | ||||
-rw-r--r-- | tools/perf/util/probe-finder.c | 4 |
2 files changed, 7 insertions, 2 deletions
diff --git a/tools/perf/util/probe-event.c b/tools/perf/util/probe-event.c index 0e3ea1321103..369ddc64bbb6 100644 --- a/tools/perf/util/probe-event.c +++ b/tools/perf/util/probe-event.c | |||
@@ -1832,9 +1832,12 @@ int add_perf_probe_events(struct perf_probe_event *pevs, int npevs, | |||
1832 | } | 1832 | } |
1833 | 1833 | ||
1834 | /* Loop 2: add all events */ | 1834 | /* Loop 2: add all events */ |
1835 | for (i = 0; i < npevs && ret >= 0; i++) | 1835 | for (i = 0; i < npevs && ret >= 0; i++) { |
1836 | ret = __add_probe_trace_events(pkgs[i].pev, pkgs[i].tevs, | 1836 | ret = __add_probe_trace_events(pkgs[i].pev, pkgs[i].tevs, |
1837 | pkgs[i].ntevs, force_add); | 1837 | pkgs[i].ntevs, force_add); |
1838 | if (ret < 0) | ||
1839 | break; | ||
1840 | } | ||
1838 | end: | 1841 | end: |
1839 | /* Loop 3: cleanup and free trace events */ | 1842 | /* Loop 3: cleanup and free trace events */ |
1840 | for (i = 0; i < npevs; i++) { | 1843 | for (i = 0; i < npevs; i++) { |
diff --git a/tools/perf/util/probe-finder.c b/tools/perf/util/probe-finder.c index fe461f6559f1..eecbdca5c0d5 100644 --- a/tools/perf/util/probe-finder.c +++ b/tools/perf/util/probe-finder.c | |||
@@ -1262,7 +1262,7 @@ static int probe_point_line_walker(const char *fname, int lineno, | |||
1262 | ret = call_probe_finder(NULL, pf); | 1262 | ret = call_probe_finder(NULL, pf); |
1263 | 1263 | ||
1264 | /* Continue if no error, because the line will be in inline function */ | 1264 | /* Continue if no error, because the line will be in inline function */ |
1265 | return ret < 0 ?: 0; | 1265 | return ret < 0 ? ret : 0; |
1266 | } | 1266 | } |
1267 | 1267 | ||
1268 | /* Find probe point from its line number */ | 1268 | /* Find probe point from its line number */ |
@@ -1484,6 +1484,8 @@ static int find_probes(int fd, struct probe_finder *pf) | |||
1484 | pf->lno = pp->line; | 1484 | pf->lno = pp->line; |
1485 | ret = find_probe_point_by_line(pf); | 1485 | ret = find_probe_point_by_line(pf); |
1486 | } | 1486 | } |
1487 | if (ret != DWARF_CB_OK) | ||
1488 | break; | ||
1487 | } | 1489 | } |
1488 | off = noff; | 1490 | off = noff; |
1489 | } | 1491 | } |