| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | #ifndef _ASM_X86_64_VSYSCALL_H_
 | 
					
						
							|  |  |  | #define _ASM_X86_64_VSYSCALL_H_
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | enum vsyscall_num { | 
					
						
							|  |  |  | 	__NR_vgettimeofday, | 
					
						
							|  |  |  | 	__NR_vtime, | 
					
						
							| 
									
										
										
										
											2006-09-26 10:52:28 +02:00
										 |  |  | 	__NR_vgetcpu, | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | }; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #define VSYSCALL_START (-10UL << 20)
 | 
					
						
							|  |  |  | #define VSYSCALL_SIZE 1024
 | 
					
						
							|  |  |  | #define VSYSCALL_END (-2UL << 20)
 | 
					
						
							| 
									
										
										
										
											2006-12-07 02:14:09 +01:00
										 |  |  | #define VSYSCALL_MAPPED_PAGES 1
 | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | #define VSYSCALL_ADDR(vsyscall_nr) (VSYSCALL_START+VSYSCALL_SIZE*(vsyscall_nr))
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #ifdef __KERNEL__
 | 
					
						
							| 
									
										
										
										
											2006-09-16 12:15:48 -07:00
										 |  |  | #include <linux/seqlock.h>
 | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2006-09-26 10:52:28 +02:00
										 |  |  | #define __section_vgetcpu_mode __attribute__ ((unused, __section__ (".vgetcpu_mode"), aligned(16)))
 | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | #define __section_jiffies __attribute__ ((unused, __section__ (".jiffies"), aligned(16)))
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2007-02-16 01:28:21 -08:00
										 |  |  | /* Definitions for CONFIG_GENERIC_TIME definitions */ | 
					
						
							|  |  |  | #define __section_vsyscall_gtod_data __attribute__ \
 | 
					
						
							|  |  |  | 	((unused, __section__ (".vsyscall_gtod_data"),aligned(16))) | 
					
						
							| 
									
										
										
										
											2007-07-21 17:10:01 +02:00
										 |  |  | #define __section_vsyscall_clock __attribute__ \
 | 
					
						
							|  |  |  | 	((unused, __section__ (".vsyscall_clock"),aligned(16))) | 
					
						
							| 
									
										
										
										
											2007-02-16 01:28:21 -08:00
										 |  |  | #define __vsyscall_fn __attribute__ ((unused,__section__(".vsyscall_fn")))
 | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2006-09-26 10:52:28 +02:00
										 |  |  | #define VGETCPU_RDTSCP	1
 | 
					
						
							|  |  |  | #define VGETCPU_LSL	2
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | extern int __vgetcpu_mode; | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | extern volatile unsigned long __jiffies; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | /* kernel space (writeable) */ | 
					
						
							| 
									
										
										
										
											2006-09-26 10:52:28 +02:00
										 |  |  | extern int vgetcpu_mode; | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | extern struct timezone sys_tz; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #endif /* __KERNEL__ */
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #endif /* _ASM_X86_64_VSYSCALL_H_ */
 |