31 lines
		
	
	
		
			674 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			31 lines
		
	
	
		
			674 B
		
	
	
	
		
			C
		
	
	
	
	
	
| #ifndef _ASM_X86_VGTOD_H
 | |
| #define _ASM_X86_VGTOD_H
 | |
| 
 | |
| #include <asm/vsyscall.h>
 | |
| #include <linux/clocksource.h>
 | |
| 
 | |
| struct vsyscall_gtod_data {
 | |
| 	seqlock_t	lock;
 | |
| 
 | |
| 	/* open coded 'struct timespec' */
 | |
| 	time_t		wall_time_sec;
 | |
| 	u32		wall_time_nsec;
 | |
| 
 | |
| 	int		sysctl_enabled;
 | |
| 	struct timezone sys_tz;
 | |
| 	struct { /* extract of a clocksource struct */
 | |
| 		cycle_t (*vread)(void);
 | |
| 		cycle_t	cycle_last;
 | |
| 		cycle_t	mask;
 | |
| 		u32	mult;
 | |
| 		u32	shift;
 | |
| 	} clock;
 | |
| 	struct timespec wall_to_monotonic;
 | |
| 	struct timespec wall_time_coarse;
 | |
| };
 | |
| extern struct vsyscall_gtod_data __vsyscall_gtod_data
 | |
| __section_vsyscall_gtod_data;
 | |
| extern struct vsyscall_gtod_data vsyscall_gtod_data;
 | |
| 
 | |
| #endif /* _ASM_X86_VGTOD_H */
 |