diff options
| author | H. Peter Anvin <hpa@zytor.com> | 2010-04-29 19:53:17 -0400 |
|---|---|---|
| committer | H. Peter Anvin <hpa@zytor.com> | 2010-04-29 19:53:17 -0400 |
| commit | d9c5841e22231e4e49fd0a1004164e6fce59b7a6 (patch) | |
| tree | e1f589c46b3ff79bbe7b1b2469f6362f94576da6 /include/linux/range.h | |
| parent | b701a47ba48b698976fb2fe05fb285b0edc1d26a (diff) | |
| parent | 5967ed87ade85a421ef814296c3c7f182b08c225 (diff) | |
Merge branch 'x86/asm' into x86/atomic
Merge reason:
Conflict between LOCK_PREFIX_HERE and relative alternatives
pointers
Resolved Conflicts:
arch/x86/include/asm/alternative.h
arch/x86/kernel/alternative.c
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Diffstat (limited to 'include/linux/range.h')
| -rw-r--r-- | include/linux/range.h | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/include/linux/range.h b/include/linux/range.h new file mode 100644 index 000000000000..bd184a5db791 --- /dev/null +++ b/include/linux/range.h | |||
| @@ -0,0 +1,30 @@ | |||
| 1 | #ifndef _LINUX_RANGE_H | ||
| 2 | #define _LINUX_RANGE_H | ||
| 3 | |||
| 4 | struct range { | ||
| 5 | u64 start; | ||
| 6 | u64 end; | ||
| 7 | }; | ||
| 8 | |||
| 9 | int add_range(struct range *range, int az, int nr_range, | ||
| 10 | u64 start, u64 end); | ||
| 11 | |||
| 12 | |||
| 13 | int add_range_with_merge(struct range *range, int az, int nr_range, | ||
| 14 | u64 start, u64 end); | ||
| 15 | |||
| 16 | void subtract_range(struct range *range, int az, u64 start, u64 end); | ||
| 17 | |||
| 18 | int clean_sort_range(struct range *range, int az); | ||
| 19 | |||
| 20 | void sort_range(struct range *range, int nr_range); | ||
| 21 | |||
| 22 | #define MAX_RESOURCE ((resource_size_t)~0) | ||
| 23 | static inline resource_size_t cap_resource(u64 val) | ||
| 24 | { | ||
| 25 | if (val > MAX_RESOURCE) | ||
| 26 | return MAX_RESOURCE; | ||
| 27 | |||
| 28 | return val; | ||
| 29 | } | ||
| 30 | #endif | ||
