diff options
author | Sage Weil <sage@newdream.net> | 2009-11-07 20:18:22 -0800 |
---|---|---|
committer | Sage Weil <sage@newdream.net> | 2009-11-07 20:18:22 -0800 |
commit | fb690390e305ea51e1883b105c7d3c52d7100ba5 (patch) | |
tree | c099a71133225b1d22bba976e93dc6ab92a08986 /fs/ceph/osdmap.c | |
parent | 1654dd0cf5ee1827322aca156af7d96d757201c7 (diff) | |
download | linux-fb690390e305ea51e1883b105c7d3c52d7100ba5.tar.gz linux-fb690390e305ea51e1883b105c7d3c52d7100ba5.tar.bz2 linux-fb690390e305ea51e1883b105c7d3c52d7100ba5.zip |
ceph: make CRUSH hash function a bucket property
Make the integer hash function a property of the bucket it is used on. This
allows us to gracefully add support for new hash functions without starting
from scatch.
Signed-off-by: Sage Weil <sage@newdream.net>
Diffstat (limited to 'fs/ceph/osdmap.c')
-rw-r--r-- | fs/ceph/osdmap.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/ceph/osdmap.c b/fs/ceph/osdmap.c index 68478270ad70..8c994c714781 100644 --- a/fs/ceph/osdmap.c +++ b/fs/ceph/osdmap.c @@ -210,7 +210,8 @@ static struct crush_map *crush_decode(void *pbyval, void *end) ceph_decode_need(p, end, 4*sizeof(u32), bad); b->id = ceph_decode_32(p); b->type = ceph_decode_16(p); - b->alg = ceph_decode_16(p); + b->alg = ceph_decode_8(p); + b->hash = ceph_decode_8(p); b->weight = ceph_decode_32(p); b->size = ceph_decode_32(p); |