btrfs-progs: Stop stomping on 'name' input parameter
authorAlex Chiang <achiang@hp.com>
Tue, 1 Apr 2008 14:38:51 +0000 (10:38 -0400)
committerDavid Woodhouse <dwmw2@hera.kernel.org>
Tue, 1 Apr 2008 14:38:51 +0000 (10:38 -0400)
In btrfs_name_hash, Local variable 'buf' is declared as

__u32 buf[2];

but we then try to do this:

buf[0] = 0x67452301;
buf[1] = 0xefcdab89;
buf[2] = 0x98badcfe;
buf[3] = 0x10325476;

Oops. Fix buf to be the proper size.

Signed-off-by: Alex Chiang <achiang@hp.com>
hash.c

diff --git a/hash.c b/hash.c
index 58f0be6..6a0795d 100644 (file)
--- a/hash.c
+++ b/hash.c
@@ -80,7 +80,7 @@ u64 btrfs_name_hash(const char *name, int len)
        __u32   hash;
        __u32   minor_hash = 0;
        const char      *p;
-       __u32           in[8], buf[2];
+       __u32           in[8], buf[4];
        u64             hash_result;
 
        /* Initialize the default seed for the hash checksum functions */