cputime.h 1.8 KB

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