1e477f3f0SAdrian Hunter #include <stdio.h> 2e477f3f0SAdrian Hunter #include <string.h> 3e477f3f0SAdrian Hunter 4e477f3f0SAdrian Hunter #define VDSO__MAP_NAME "[vdso]" 5e477f3f0SAdrian Hunter 6e477f3f0SAdrian Hunter /* 7e477f3f0SAdrian Hunter * Include definition of find_vdso_map() also used in util/vdso.c for 8e477f3f0SAdrian Hunter * building perf. 9e477f3f0SAdrian Hunter */ 10e477f3f0SAdrian Hunter #include "util/find-vdso-map.c" 11e477f3f0SAdrian Hunter 12e477f3f0SAdrian Hunter int main(void) 13e477f3f0SAdrian Hunter { 14e477f3f0SAdrian Hunter void *start, *end; 15e477f3f0SAdrian Hunter size_t size, written; 16e477f3f0SAdrian Hunter 17e477f3f0SAdrian Hunter if (find_vdso_map(&start, &end)) 18e477f3f0SAdrian Hunter return 1; 19e477f3f0SAdrian Hunter 20e477f3f0SAdrian Hunter size = end - start; 21e477f3f0SAdrian Hunter 22e477f3f0SAdrian Hunter while (size) { 23e477f3f0SAdrian Hunter written = fwrite(start, 1, size, stdout); 24e477f3f0SAdrian Hunter if (!written) 25e477f3f0SAdrian Hunter return 1; 26e477f3f0SAdrian Hunter start += written; 27e477f3f0SAdrian Hunter size -= written; 28e477f3f0SAdrian Hunter } 29e477f3f0SAdrian Hunter 30e477f3f0SAdrian Hunter if (fflush(stdout)) 31e477f3f0SAdrian Hunter return 1; 32e477f3f0SAdrian Hunter 33e477f3f0SAdrian Hunter return 0; 34e477f3f0SAdrian Hunter } 35