cputime_jiffies.h 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. #ifndef _ASM_GENERIC_CPUTIME_JIFFIES_H
  2. #define _ASM_GENERIC_CPUTIME_JIFFIES_H
  3. typedef unsigned long __nocast cputime_t;
  4. #define cputime_one_jiffy jiffies_to_cputime(1)
  5. #define cputime_to_jiffies(__ct) (__force unsigned long)(__ct)
  6. #define cputime_to_scaled(__ct) (__ct)
  7. #define jiffies_to_cputime(__hz) (__force cputime_t)(__hz)
  8. typedef u64 __nocast cputime64_t;
  9. #define cputime64_to_jiffies64(__ct) (__force u64)(__ct)
  10. #define jiffies64_to_cputime64(__jif) (__force cputime64_t)(__jif)
  11. /*
  12. * Convert nanoseconds <-> cputime
  13. */
  14. #define cputime_to_nsecs(__ct) \
  15. jiffies_to_nsecs(cputime_to_jiffies(__ct))
  16. #define nsecs_to_cputime64(__nsec) \
  17. jiffies64_to_cputime64(nsecs_to_jiffies64(__nsec))
  18. #define nsecs_to_cputime(__nsec) \
  19. jiffies_to_cputime(nsecs_to_jiffies(__nsec))
  20. /*
  21. * Convert cputime to microseconds and back.
  22. */
  23. #define cputime_to_usecs(__ct) \
  24. jiffies_to_usecs(cputime_to_jiffies(__ct))
  25. #define usecs_to_cputime(__usec) \
  26. jiffies_to_cputime(usecs_to_jiffies(__usec))
  27. #define usecs_to_cputime64(__usec) \
  28. jiffies64_to_cputime64(nsecs_to_jiffies64((__usec) * 1000))
  29. /*
  30. * Convert cputime to seconds and back.
  31. */
  32. #define cputime_to_secs(jif) (cputime_to_jiffies(jif) / HZ)
  33. #define secs_to_cputime(sec) jiffies_to_cputime((sec) * HZ)
  34. /*
  35. * Convert cputime to timespec and back.
  36. */
  37. #define timespec_to_cputime(__val) \
  38. jiffies_to_cputime(timespec_to_jiffies(__val))
  39. #define cputime_to_timespec(__ct,__val) \
  40. jiffies_to_timespec(cputime_to_jiffies(__ct),__val)
  41. /*
  42. * Convert cputime to timeval and back.
  43. */
  44. #define timeval_to_cputime(__val) \
  45. jiffies_to_cputime(timeval_to_jiffies(__val))
  46. #define cputime_to_timeval(__ct,__val) \
  47. jiffies_to_timeval(cputime_to_jiffies(__ct),__val)
  48. /*
  49. * Convert cputime to clock and back.
  50. */
  51. #define cputime_to_clock_t(__ct) \
  52. jiffies_to_clock_t(cputime_to_jiffies(__ct))
  53. #define clock_t_to_cputime(__x) \
  54. jiffies_to_cputime(clock_t_to_jiffies(__x))
  55. /*
  56. * Convert cputime64 to clock.
  57. */
  58. #define cputime64_to_clock_t(__ct) \
  59. jiffies_64_to_clock_t(cputime64_to_jiffies64(__ct))
  60. #endif