hash.h (650B)
1/* SPDX-License-Identifier: GPL-2.0 */ 2#ifndef CEPH_CRUSH_HASH_H 3#define CEPH_CRUSH_HASH_H 4 5#ifdef __KERNEL__ 6# include <linux/types.h> 7#else 8# include "crush_compat.h" 9#endif 10 11#define CRUSH_HASH_RJENKINS1 0 12 13#define CRUSH_HASH_DEFAULT CRUSH_HASH_RJENKINS1 14 15extern const char *crush_hash_name(int type); 16 17extern __u32 crush_hash32(int type, __u32 a); 18extern __u32 crush_hash32_2(int type, __u32 a, __u32 b); 19extern __u32 crush_hash32_3(int type, __u32 a, __u32 b, __u32 c); 20extern __u32 crush_hash32_4(int type, __u32 a, __u32 b, __u32 c, __u32 d); 21extern __u32 crush_hash32_5(int type, __u32 a, __u32 b, __u32 c, __u32 d, 22 __u32 e); 23 24#endif