]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commit
osd: drain peering wq in start_boot, not _committed_maps
authorSage Weil <sage@redhat.com>
Wed, 1 Aug 2018 21:33:22 +0000 (16:33 -0500)
committerSage Weil <sage@redhat.com>
Fri, 7 Sep 2018 17:09:05 +0000 (12:09 -0500)
commit47d627736a7a199c6bf66e1117029ce2b77b404d
treede7ac48cc4e0be355887fea5752c7914c8ed7f5c
parent3cd63b93878c4dd09159cb6c6547e4c3d292826d
osd: drain peering wq in start_boot, not _committed_maps

We can't safely block in _committed_osd_maps because we are being run
by the store's finisher threads, and we may have to wait for a PG to split
and then merge via that same queue and deadlock.

Do not hold osd_lock while waiting as this can interfere with *other*
objectstore completions that take osd_lock.

Signed-off-by: Sage Weil <sage@redhat.com>
src/osd/OSD.cc
src/osd/OSD.h