diff options
Diffstat (limited to 'tools/perf/util/map.c')
-rw-r--r-- | tools/perf/util/map.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/tools/perf/util/map.c b/tools/perf/util/map.c index b7090596ac50..2137c4596ec7 100644 --- a/tools/perf/util/map.c +++ b/tools/perf/util/map.c | |||
@@ -556,7 +556,7 @@ struct symbol *map_groups__find_symbol_by_name(struct map_groups *mg, | |||
556 | 556 | ||
557 | int map_groups__find_ams(struct addr_map_symbol *ams, symbol_filter_t filter) | 557 | int map_groups__find_ams(struct addr_map_symbol *ams, symbol_filter_t filter) |
558 | { | 558 | { |
559 | if (ams->addr < ams->map->start || ams->addr > ams->map->end) { | 559 | if (ams->addr < ams->map->start || ams->addr >= ams->map->end) { |
560 | if (ams->map->groups == NULL) | 560 | if (ams->map->groups == NULL) |
561 | return -1; | 561 | return -1; |
562 | ams->map = map_groups__find(ams->map->groups, ams->map->type, | 562 | ams->map = map_groups__find(ams->map->groups, ams->map->type, |
@@ -664,7 +664,7 @@ int map_groups__fixup_overlappings(struct map_groups *mg, struct map *map, | |||
664 | goto move_map; | 664 | goto move_map; |
665 | } | 665 | } |
666 | 666 | ||
667 | before->end = map->start - 1; | 667 | before->end = map->start; |
668 | map_groups__insert(mg, before); | 668 | map_groups__insert(mg, before); |
669 | if (verbose >= 2) | 669 | if (verbose >= 2) |
670 | map__fprintf(before, fp); | 670 | map__fprintf(before, fp); |
@@ -678,7 +678,7 @@ int map_groups__fixup_overlappings(struct map_groups *mg, struct map *map, | |||
678 | goto move_map; | 678 | goto move_map; |
679 | } | 679 | } |
680 | 680 | ||
681 | after->start = map->end + 1; | 681 | after->start = map->end; |
682 | map_groups__insert(mg, after); | 682 | map_groups__insert(mg, after); |
683 | if (verbose >= 2) | 683 | if (verbose >= 2) |
684 | map__fprintf(after, fp); | 684 | map__fprintf(after, fp); |
@@ -752,7 +752,7 @@ struct map *maps__find(struct rb_root *maps, u64 ip) | |||
752 | m = rb_entry(parent, struct map, rb_node); | 752 | m = rb_entry(parent, struct map, rb_node); |
753 | if (ip < m->start) | 753 | if (ip < m->start) |
754 | p = &(*p)->rb_left; | 754 | p = &(*p)->rb_left; |
755 | else if (ip > m->end) | 755 | else if (ip >= m->end) |
756 | p = &(*p)->rb_right; | 756 | p = &(*p)->rb_right; |
757 | else | 757 | else |
758 | return m; | 758 | return m; |