Messages in this thread | | | Subject | Re: [PATCH 4/4] perf tools: Back [vdso] DSO with real data | From | Peter Zijlstra <> | Date | Mon, 10 Sep 2012 18:56:29 +0200 |
| |
On Mon, 2012-09-10 at 18:50 +0200, Jiri Olsa wrote: > + maps = fopen("/proc/self/maps", "r"); > + if (!maps) { > + pr_err("vdso: cannot open maps\n"); > + return -1; > + } > + > + while (!found && fgets(line, sizeof(line), maps)) { > + int m = -1; > + > + /* We care only about private r-x mappings. */ > + if (2 != sscanf(line, "%p-%p r-xp %*x %*x:%*x %*u %n", > + start, end, &m)) > + continue; > + if (m < 0) > + continue; > + > + if (!strncmp(&line[m], VDSO__MAP_NAME, > + sizeof(VDSO__MAP_NAME) - 1)) > + found = 1; > + }
Argh.. :-) We so should have the vdso as a proper elf DSO somewhere in /proc or /sys, but yeah, lacking that what you've done is about all we can do.
| |