range.h 612 B

12345678910111213141516171819202122232425262728293031
  1. #ifndef _LINUX_RANGE_H
  2. #define _LINUX_RANGE_H
  3. struct range {
  4. u64 start;
  5. u64 end;
  6. };
  7. int add_range(struct range *range, int az, int nr_range,
  8. u64 start, u64 end);
  9. int add_range_with_merge(struct range *range, int az, int nr_range,
  10. u64 start, u64 end);
  11. void subtract_range(struct range *range, int az, u64 start, u64 end);
  12. int clean_sort_range(struct range *range, int az);
  13. void sort_range(struct range *range, int nr_range);
  14. #define MAX_RESOURCE ((resource_size_t)~0)
  15. static inline resource_size_t cap_resource(u64 val)
  16. {
  17. if (val > MAX_RESOURCE)
  18. return MAX_RESOURCE;
  19. return val;
  20. }
  21. #endif