summaryrefslogtreecommitdiffstats
path: root/fs/btrfs/hash.h
diff options
context:
space:
mode:
authorDavid Woodhouse <David.Woodhouse@intel.com>2008-08-19 20:21:57 +0200
committerChris Mason <chris.mason@oracle.com>2008-09-25 17:04:06 +0200
commit615f996fb8185a0bc02812ebd72cb77ded5645f1 (patch)
tree0e97c4fd52b44d603e589e41c90892739e6f5a30 /fs/btrfs/hash.h
parentBtrfs: Reinstate '-osubvol=.' option to mount entire tree (diff)
downloadlinux-615f996fb8185a0bc02812ebd72cb77ded5645f1.tar.xz
linux-615f996fb8185a0bc02812ebd72cb77ded5645f1.zip
Switch btrfs_name_hash() to crc32c
Date: Tue, 19 Aug 2008 19:21:57 +0100 Using a 64-bit hash as the readdir cookie is just asking for trouble. And gets it, when we try to export the file system by NFS. Signed-off-by: David Woodhouse <David.Woodhouse@intel.com> Signed-off-by: Chris Mason <chris.mason@oracle.com>
Diffstat (limited to 'fs/btrfs/hash.h')
-rw-r--r--fs/btrfs/hash.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/fs/btrfs/hash.h b/fs/btrfs/hash.h
index 868ee17ca77a..2a020b276768 100644
--- a/fs/btrfs/hash.h
+++ b/fs/btrfs/hash.h
@@ -18,5 +18,10 @@
#ifndef __HASH__
#define __HASH__
-u64 btrfs_name_hash(const char *name, int len);
+
+#include "crc32c.h"
+static inline u64 btrfs_name_hash(const char *name, int len)
+{
+ return btrfs_crc32c((u32)~1, name, len);
+}
#endif