crush: ensuring at most num-rep osds are selected
authorIlya Dryomov <idryomov@gmail.com>
Tue, 14 Apr 2015 13:04:23 +0000 (16:04 +0300)
committerIlya Dryomov <idryomov@gmail.com>
Wed, 22 Apr 2015 15:33:42 +0000 (18:33 +0300)
commit45002267e8d2699bf9b022315bee3dd13b044843
tree9cbbc74ef620e4cc6b8f34cee1f1539fb11c0e93
parent9be6df215a1baa57ccad0c388daeb2ad8f8d99ee
crush: ensuring at most num-rep osds are selected

Crush temporary buffers are allocated as per replica size configured
by the user.  When there are more final osds (to be selected as per
rule) than the replicas, buffer overlaps and it causes crash.  Now, it
ensures that at most num-rep osds are selected even if more number of
osds are allowed by the rule.

Reflects ceph.git commits 6b4d1aa99718e3b367496326c1e64551330fabc0,
                          234b066ba04976783d15ff2abc3e81b6cc06fb10.

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
net/ceph/crush/mapper.c