kernel-fxtec-pro1x/fs/ceph
Sage Weil cfbbcd24a6 ceph: use strong hash function for mapping objects to pgs
We were using the (weak) dcache hash function, but it was leaving lower
bits consecutive for consecutive (inode) objects.  We really want to make
the object to pg mapping random and uniform, so use a proper hash function
here.

This is Robert Jenkin's public domain hash function (with some minor
cleanup):
	http://burtleburtle.net/bob/hash/evahash.html

This is a protocol revision.

Signed-off-by: Sage Weil <sage@newdream.net>
2009-11-06 16:44:05 -08:00
..
crush ceph: make CRUSH hash functions non-inline 2009-11-06 16:39:26 -08:00
addr.c ceph: allocate and parse mount args before client instance 2009-10-27 11:57:03 -07:00
buffer.c ceph: ref counted buffer 2009-10-06 11:31:07 -07:00
buffer.h ceph: ref counted buffer 2009-10-06 11:31:07 -07:00
caps.c ceph: allocate and parse mount args before client instance 2009-10-27 11:57:03 -07:00
ceph_debug.h ceph: client types 2009-10-06 11:31:07 -07:00
ceph_frag.c ceph: client types 2009-10-06 11:31:07 -07:00
ceph_frag.h ceph: client types 2009-10-06 11:31:07 -07:00
ceph_fs.c ceph: use strong hash function for mapping objects to pgs 2009-11-06 16:44:05 -08:00
ceph_fs.h ceph: use strong hash function for mapping objects to pgs 2009-11-06 16:44:05 -08:00
ceph_strings.c
debugfs.c ceph: debugfs 2009-10-06 11:31:14 -07:00
decode.h ceph: use fixed endian encoding for ceph_entity_addr 2009-11-03 15:17:56 -08:00
dir.c ceph: allocate and parse mount args before client instance 2009-10-27 11:57:03 -07:00
export.c ceph: nfs re-export support 2009-10-06 11:31:13 -07:00
file.c ceph: fix sparse endian warning 2009-11-04 16:36:12 -08:00
inode.c ceph: move directory size logic to ceph_getattr 2009-10-21 11:24:36 -07:00
ioctl.c ceph: fix endian conversions for ceph_pg 2009-11-04 16:36:07 -08:00
ioctl.h ceph: ioctls 2009-10-06 11:31:14 -07:00
Kconfig ceph: Kconfig, Makefile 2009-10-06 11:31:15 -07:00
Makefile ceph: make CRUSH hash functions non-inline 2009-11-06 16:39:26 -08:00
mds_client.c ceph: allocate and parse mount args before client instance 2009-10-27 11:57:03 -07:00
mds_client.h ceph: MDS client 2009-10-06 11:31:09 -07:00
mdsmap.c ceph: use fixed endian encoding for ceph_entity_addr 2009-11-03 15:17:56 -08:00
mdsmap.h ceph: MDS client 2009-10-06 11:31:09 -07:00
messenger.c ceph: convert port endianness 2009-11-04 16:36:12 -08:00
messenger.h ceph: use fixed endian encoding for ceph_entity_addr 2009-11-03 15:17:56 -08:00
mon_client.c ceph: use fixed endian encoding for ceph_entity_addr 2009-11-03 15:17:56 -08:00
mon_client.h ceph: monitor client 2009-10-06 11:31:11 -07:00
msgpool.c ceph: warn on allocation from msgpool with larger front_len 2009-10-15 18:14:43 -07:00
msgpool.h ceph: warn on allocation from msgpool with larger front_len 2009-10-15 18:14:43 -07:00
msgr.h ceph: use fixed endian encoding for ceph_entity_addr 2009-11-03 15:17:56 -08:00
osd_client.c ceph: fix endian conversions for ceph_pg 2009-11-04 16:36:07 -08:00
osd_client.h ceph: OSD client 2009-10-06 11:31:10 -07:00
osdmap.c ceph: clean up 'osd%d down' console msg 2009-11-06 13:57:49 -08:00
osdmap.h ceph: fix endian conversions for ceph_pg 2009-11-04 16:36:07 -08:00
rados.h ceph: fix endian conversions for ceph_pg 2009-11-04 16:36:07 -08:00
README ceph: make CRUSH hash functions non-inline 2009-11-06 16:39:26 -08:00
snap.c ceph: snapshot management 2009-10-06 11:31:12 -07:00
super.c ceph: fix sparse endian warning 2009-11-04 16:36:12 -08:00
super.h ceph: replace list_entry with container_of 2009-10-28 17:44:22 -07:00
types.h ceph: client types 2009-10-06 11:31:07 -07:00
xattr.c ceph: fix uninitialized err variable 2009-11-01 17:51:15 -08:00

#
# The following files are shared by (and manually synchronized
# between) the Ceph userland and kernel client.
#
# userland                  kernel
src/include/ceph_fs.h	    fs/ceph/ceph_fs.h
src/include/ceph_fs.cc	    fs/ceph/ceph_fs.c
src/include/msgr.h	    fs/ceph/msgr.h
src/include/rados.h	    fs/ceph/rados.h
src/include/ceph_strings.cc fs/ceph/ceph_strings.c
src/include/ceph_frag.h	    fs/ceph/ceph_frag.h
src/include/ceph_frag.cc    fs/ceph/ceph_frag.c
src/crush/crush.c	    fs/ceph/crush/crush.c
src/crush/crush.h	    fs/ceph/crush/crush.h
src/crush/mapper.c	    fs/ceph/crush/mapper.c
src/crush/mapper.h	    fs/ceph/crush/mapper.h
src/crush/hash.h	    fs/ceph/crush/hash.h
src/crush/hash.c	    fs/ceph/crush/hash.c