home *** CD-ROM | disk | FTP | other *** search
/ Mac Easy 2010 May / Mac Life Ubuntu.iso / casper / filesystem.squashfs / usr / src / linux-headers-2.6.28-15 / arch / x86 / include / asm / vsyscall.h < prev    next >
Encoding:
C/C++ Source or Header  |  2008-12-24  |  1.2 KB  |  45 lines

  1. #ifndef _ASM_X86_VSYSCALL_H
  2. #define _ASM_X86_VSYSCALL_H
  3.  
  4. enum vsyscall_num {
  5.     __NR_vgettimeofday,
  6.     __NR_vtime,
  7.     __NR_vgetcpu,
  8. };
  9.  
  10. #define VSYSCALL_START (-10UL << 20)
  11. #define VSYSCALL_SIZE 1024
  12. #define VSYSCALL_END (-2UL << 20)
  13. #define VSYSCALL_MAPPED_PAGES 1
  14. #define VSYSCALL_ADDR(vsyscall_nr) (VSYSCALL_START+VSYSCALL_SIZE*(vsyscall_nr))
  15.  
  16. #ifdef __KERNEL__
  17. #include <linux/seqlock.h>
  18.  
  19. #define __section_vgetcpu_mode __attribute__ ((unused, __section__ (".vgetcpu_mode"), aligned(16)))
  20. #define __section_jiffies __attribute__ ((unused, __section__ (".jiffies"), aligned(16)))
  21.  
  22. /* Definitions for CONFIG_GENERIC_TIME definitions */
  23. #define __section_vsyscall_gtod_data __attribute__ \
  24.     ((unused, __section__ (".vsyscall_gtod_data"),aligned(16)))
  25. #define __section_vsyscall_clock __attribute__ \
  26.     ((unused, __section__ (".vsyscall_clock"),aligned(16)))
  27. #define __vsyscall_fn \
  28.     __attribute__ ((unused, __section__(".vsyscall_fn"))) notrace
  29.  
  30. #define VGETCPU_RDTSCP    1
  31. #define VGETCPU_LSL    2
  32.  
  33. extern int __vgetcpu_mode;
  34. extern volatile unsigned long __jiffies;
  35.  
  36. /* kernel space (writeable) */
  37. extern int vgetcpu_mode;
  38. extern struct timezone sys_tz;
  39.  
  40. extern void map_vsyscall(void);
  41.  
  42. #endif /* __KERNEL__ */
  43.  
  44. #endif /* _ASM_X86_VSYSCALL_H */
  45.