mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2025-01-17 02:36:21 +00:00
crush: decode and initialize chooseleaf_vary_r
Commit e2b149cc4ba0 ("crush: add chooseleaf_vary_r tunable") added the crush_map::chooseleaf_vary_r field but missed the decode part. This lead to misdirected requests caused by incorrect raw crush mapping sets. Fixes: http://tracker.ceph.com/issues/8226 Reported-and-Tested-by: Dmitry Smirnov <onlyjob@member.fsf.org> Signed-off-by: Ilya Dryomov <ilya.dryomov@inktank.com> Reviewed-by: Sage Weil <sage@inktank.com>
This commit is contained in:
parent
178eda29ca
commit
f140662f35
@ -329,6 +329,11 @@ static struct crush_map *crush_decode(void *pbyval, void *end)
|
||||
dout("crush decode tunable chooseleaf_descend_once = %d",
|
||||
c->chooseleaf_descend_once);
|
||||
|
||||
ceph_decode_need(p, end, sizeof(u8), done);
|
||||
c->chooseleaf_vary_r = ceph_decode_8(p);
|
||||
dout("crush decode tunable chooseleaf_vary_r = %d",
|
||||
c->chooseleaf_vary_r);
|
||||
|
||||
done:
|
||||
dout("crush_decode success\n");
|
||||
return c;
|
||||
|
Loading…
x
Reference in New Issue
Block a user