Index: kernel/generic/include/adt/hash.h
===================================================================
--- kernel/generic/include/adt/hash.h	(revision 0b7bcb8f7fd2c6a7595e9ab91e34305be0df1d6f)
+++ kernel/generic/include/adt/hash.h	(revision 26d8df3ecde04604978e57940c1eb659ab53b8a6)
@@ -66,5 +66,10 @@
 	hash = hash * 0x27d4eb2d;
 	hash = hash ^ (hash >> 15);	
-	return hash;
+	/* 
+	 * Lower order bits are mixed more thoroughly. Swap them with
+	 * the higher order bits and make the resulting higher order bits
+	 * more usable.
+	 */
+	return (hash << 32) | (hash >> 32);
 }
 
