X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=hash.h;h=9ff67613330ecc8107aee1396799fedc9edc3b26;hb=546cea6f364cb5d51e589186503764595543123a;hp=d3be02670585b9e8543f64ad248048711c9333f9;hpb=d9f1317c7d927d3d0fc0b99762690438cafa0ead;p=platform%2Fupstream%2Fbtrfs-progs.git diff --git a/hash.h b/hash.h index d3be026..9ff6761 100644 --- a/hash.h +++ b/hash.h @@ -16,7 +16,23 @@ * Boston, MA 021110-1307, USA. */ -#ifndef __HASH__ -#define __HASH__ -int btrfs_name_hash(const char *name, int len, u64 *hash_result); +#ifndef __BTRFS_HASH_H__ +#define __BTRFS_HASH_H__ + +#include "crc32c.h" + +static inline u64 btrfs_name_hash(const char *name, int len) +{ + return crc32c((u32)~1, name, len); +} + +/* + * Figure the key offset of an extended inode ref + */ +static inline u64 btrfs_extref_hash(u64 parent_objectid, const char *name, + int len) +{ + return (u64)btrfs_crc32c(parent_objectid, name, len); +} + #endif