]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
rgw: collect skips a specific coroutine stack 10845/head
authorYehuda Sadeh <yehuda@redhat.com>
Wed, 13 Jul 2016 03:36:35 +0000 (20:36 -0700)
committerCasey Bodley <cbodley@redhat.com>
Wed, 24 Aug 2016 20:48:29 +0000 (16:48 -0400)
commit21da1039fc57bcf4054c0e7a13bb2732781770f6
tree2567ef82765acf7882ea22750ef2ba0de2f9e07e
parent98779c32de98efc367e888b99fd154ad4e5274d9
rgw: collect skips a specific coroutine stack

Fixes: http://tracker.ceph.com/issues/16665
Instead of drain_all_but() that specifies number of stacks to leave behind,
added drain_all_but_stack() that has a specific stack specified. This is needed
so that we don't call wakeup() through lease_cr->go_down() on a cr stack that
was already collected.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
(cherry picked from commit 5a2e8f0526db92a290c711f82627fc5042c290ea)
src/rgw/rgw_coroutine.cc
src/rgw/rgw_coroutine.h
src/rgw/rgw_data_sync.cc
src/rgw/rgw_sync.cc