]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
OSD: handle_osd_ping: use service->get_osdmap()
authorSamuel Just <sam.just@inktank.com>
Tue, 17 Jul 2012 23:20:38 +0000 (16:20 -0700)
committerSamuel Just <sam.just@inktank.com>
Tue, 17 Jul 2012 23:58:21 +0000 (16:58 -0700)
commit58e81c82e00efeaa0b558e1b7f5c01a369ff9eda
tree0da2604266098e1b47d9515f20f1ae323a031ecf
parent32892c1edda13a36a5821ffd482e4e6d82a3fa9c
OSD: handle_osd_ping: use service->get_osdmap()

This way, we avoid grabbing the map_lock.  Furthermore,
get curmap at the beginning of the method to ensure that
we send the message using the same map used to check
is_up.

This should also fix #2798, which was caused by
an osd being marked up between service.get_osdmap()
and OSD::osdmap.

Signed-off-by: Samuel Just <sam.just@inktank.com>
src/osd/OSD.cc
src/osd/OSD.h