On Fri, Jul 20, 2012 at 05:25:47PM -0600, David Ahern wrote: > COMM events are not generated in the context of a guest machine, so the > thread name is never set for the VMM process. For example, the qemu-kvm > name applies to the process in the host machine, not the guest machine. > So, samples for guest machines are currently displayed as: > > 99.67% :5671 [unknown] [g] 0xffffffff81366b41 > > where 5671 is the pid of the VMM. With this patch the samples in the guest > machine are shown as: > > 18.43% [guest/5671] [unknown] [g] 0xffffffff810d68b7
Tested-by: Jiri Olsa <jo...@redhat.com> > > Signed-off-by: David Ahern <dsah...@gmail.com> > Cc: Arnaldo Carvalho de Melo <a...@ghostprotocols.net> > Cc: Ingo Molnar <mi...@kernel.org> > Cc: Jiri Olsa <jo...@redhat.com> > Cc: Namhyung Kim <namhy...@kernel.org> > Cc: Frederic Weisbecker <fweis...@gmail.com> > Cc: Peter Zijlstra <pet...@infradead.org> > --- > tools/perf/util/map.c | 17 ++++++++++++++++- > 1 file changed, 16 insertions(+), 1 deletion(-) > > diff --git a/tools/perf/util/map.c b/tools/perf/util/map.c > index a1f4e36..8668569 100644 > --- a/tools/perf/util/map.c > +++ b/tools/perf/util/map.c > @@ -7,6 +7,7 @@ > #include <stdio.h> > #include <unistd.h> > #include "map.h" > +#include "thread.h" > > const char *map_type__name[MAP__NR_TYPES] = { > [MAP__FUNCTION] = "Functions", > @@ -585,7 +586,21 @@ int machine__init(struct machine *self, const char > *root_dir, pid_t pid) > self->kmaps.machine = self; > self->pid = pid; > self->root_dir = strdup(root_dir); > - return self->root_dir == NULL ? -ENOMEM : 0; > + if (self->root_dir == NULL) > + return -ENOMEM; > + > + if (pid != HOST_KERNEL_ID) { > + struct thread *thread = machine__findnew_thread(self, pid); > + char comm[64]; > + > + if (thread == NULL) > + return -ENOMEM; > + > + snprintf(comm, sizeof(comm), "[guest/%d]", pid); > + thread__set_comm(thread, comm); > + } > + > + return 0; > } > > static void dsos__delete(struct list_head *self) > -- > 1.7.10.1 > -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/