vgtod.h 610 B

1234567891011121314151617181920212223242526272829
  1. #ifndef _ASM_VGTOD_H
  2. #define _ASM_VGTOD_H 1
  3. #include <asm/vsyscall.h>
  4. #include <linux/clocksource.h>
  5. struct vsyscall_gtod_data {
  6. seqlock_t lock;
  7. /* open coded 'struct timespec' */
  8. time_t wall_time_sec;
  9. u32 wall_time_nsec;
  10. int sysctl_enabled;
  11. struct timezone sys_tz;
  12. struct { /* extract of a clocksource struct */
  13. cycle_t (*vread)(void);
  14. cycle_t cycle_last;
  15. cycle_t mask;
  16. u32 mult;
  17. u32 shift;
  18. } clock;
  19. struct timespec wall_to_monotonic;
  20. };
  21. extern struct vsyscall_gtod_data __vsyscall_gtod_data
  22. __section_vsyscall_gtod_data;
  23. extern struct vsyscall_gtod_data vsyscall_gtod_data;
  24. #endif