#include #include #include #include #include #include int main(int argc, char *argv[]) { struct vdso_timekeep *tk; int i; if (elf_aux_info(AT_TIMEKEEP, &tk, sizeof(tk))) { printf("No AT_TIMEKEEP?\n"); } printf("Version: %d Enabled: %d Current: %d\n", tk->tk_ver, tk->tk_enabled, tk->tk_current); for (i = 0; i < 16; i++) { printf("th %d algo %d gen %d scale 0x%lx offset_count %d counter_mask 0x%x offset %ld.%ld boottime %ld.%ld\n", i, tk->tk_th[i].th_algo, tk->tk_th[i].th_gen, tk->tk_th[i].th_scale, tk->tk_th[i].th_offset_count, tk->tk_th[i].th_counter_mask, tk->tk_th[i].th_offset.sec, tk->tk_th[i].th_offset.frac, tk->tk_th[i].th_boottime.sec, tk->tk_th[i].th_boottime.frac); } return (0); }