• Ilya Dryomov's avatar
    crush: pass weight vector size to map function · b3b33b0e
    Ilya Dryomov authored
    Pass the size of the weight vector into crush_do_rule() to ensure that we
    don't access values past the end.  This can happen if the caller misbehaves
    and passes a weight vector that is smaller than max_devices.
    
    Currently the monitor tries to prevent that from happening, but this will
    gracefully tolerate previous bad osdmaps that got into this state.  It's
    also a bit more defensive.
    
    Reflects ceph.git commit 5922e2c2b8335b5e46c9504349c3a55b7434c01a.
    Signed-off-by: default avatarIlya Dryomov <ilya.dryomov@inktank.com>
    Reviewed-by: default avatarSage Weil <sage@inktank.com>
    b3b33b0e
osdmap.c 28.5 KB