Merge tag 'pinctrl-v3.19-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw...
[cascardo/linux.git] / tools / perf / util / event.c
index 4af6b27..6c6d044 100644 (file)
@@ -28,6 +28,7 @@ static const char *perf_event__names[] = {
        [PERF_RECORD_HEADER_TRACING_DATA]       = "TRACING_DATA",
        [PERF_RECORD_HEADER_BUILD_ID]           = "BUILD_ID",
        [PERF_RECORD_FINISHED_ROUND]            = "FINISHED_ROUND",
+       [PERF_RECORD_ID_INDEX]                  = "ID_INDEX",
 };
 
 const char *perf_event__name(unsigned int id)
@@ -730,12 +731,12 @@ int perf_event__process(struct perf_tool *tool __maybe_unused,
        return machine__process_event(machine, event, sample);
 }
 
-void thread__find_addr_map(struct thread *thread,
-                          struct machine *machine, u8 cpumode,
+void thread__find_addr_map(struct thread *thread, u8 cpumode,
                           enum map_type type, u64 addr,
                           struct addr_location *al)
 {
        struct map_groups *mg = thread->mg;
+       struct machine *machine = mg->machine;
        bool load_map = false;
 
        al->machine = machine;
@@ -806,14 +807,14 @@ try_again:
        }
 }
 
-void thread__find_addr_location(struct thread *thread, struct machine *machine,
+void thread__find_addr_location(struct thread *thread,
                                u8 cpumode, enum map_type type, u64 addr,
                                struct addr_location *al)
 {
-       thread__find_addr_map(thread, machine, cpumode, type, addr, al);
+       thread__find_addr_map(thread, cpumode, type, addr, al);
        if (al->map != NULL)
                al->sym = map__find_symbol(al->map, al->addr,
-                                          machine->symbol_filter);
+                                          thread->mg->machine->symbol_filter);
        else
                al->sym = NULL;
 }
@@ -842,8 +843,7 @@ int perf_event__preprocess_sample(const union perf_event *event,
            machine->vmlinux_maps[MAP__FUNCTION] == NULL)
                machine__create_kernel_maps(machine);
 
-       thread__find_addr_map(thread, machine, cpumode, MAP__FUNCTION,
-                             sample->ip, al);
+       thread__find_addr_map(thread, cpumode, MAP__FUNCTION, sample->ip, al);
        dump_printf(" ...... dso: %s\n",
                    al->map ? al->map->dso->long_name :
                        al->level == 'H' ? "[hypervisor]" : "<not found>");
@@ -902,16 +902,14 @@ bool sample_addr_correlates_sym(struct perf_event_attr *attr)
 
 void perf_event__preprocess_sample_addr(union perf_event *event,
                                        struct perf_sample *sample,
-                                       struct machine *machine,
                                        struct thread *thread,
                                        struct addr_location *al)
 {
        u8 cpumode = event->header.misc & PERF_RECORD_MISC_CPUMODE_MASK;
 
-       thread__find_addr_map(thread, machine, cpumode, MAP__FUNCTION,
-                             sample->addr, al);
+       thread__find_addr_map(thread, cpumode, MAP__FUNCTION, sample->addr, al);
        if (!al->map)
-               thread__find_addr_map(thread, machine, cpumode, MAP__VARIABLE,
+               thread__find_addr_map(thread, cpumode, MAP__VARIABLE,
                                      sample->addr, al);
 
        al->cpu = sample->cpu;