Sage Weil | 5cd068c | 2010-07-07 08:38:17 -0700 | [diff] [blame] | 1 | #ifndef CEPH_CRUSH_HASH_H |
| 2 | #define CEPH_CRUSH_HASH_H |
Sage Weil | 5ecc0a0 | 2009-10-06 11:31:11 -0700 | [diff] [blame] | 3 | |
Ilya Dryomov | b459be7 | 2015-06-12 13:21:07 +0300 | [diff] [blame] | 4 | #ifdef __KERNEL__ |
| 5 | # include <linux/types.h> |
| 6 | #else |
| 7 | # include "crush_compat.h" |
| 8 | #endif |
| 9 | |
Sage Weil | fb69039 | 2009-11-07 20:18:22 -0800 | [diff] [blame] | 10 | #define CRUSH_HASH_RJENKINS1 0 |
| 11 | |
| 12 | #define CRUSH_HASH_DEFAULT CRUSH_HASH_RJENKINS1 |
| 13 | |
| 14 | extern const char *crush_hash_name(int type); |
| 15 | |
| 16 | extern __u32 crush_hash32(int type, __u32 a); |
| 17 | extern __u32 crush_hash32_2(int type, __u32 a, __u32 b); |
| 18 | extern __u32 crush_hash32_3(int type, __u32 a, __u32 b, __u32 c); |
| 19 | extern __u32 crush_hash32_4(int type, __u32 a, __u32 b, __u32 c, __u32 d); |
| 20 | extern __u32 crush_hash32_5(int type, __u32 a, __u32 b, __u32 c, __u32 d, |
| 21 | __u32 e); |
Sage Weil | 5ecc0a0 | 2009-10-06 11:31:11 -0700 | [diff] [blame] | 22 | |
| 23 | #endif |