]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
rgw: use explicit flag to cancel RGWCoroutinesManager::run() 12452/head
authorCasey Bodley <cbodley@redhat.com>
Mon, 12 Dec 2016 21:42:15 +0000 (16:42 -0500)
committerCasey Bodley <cbodley@redhat.com>
Mon, 12 Dec 2016 21:42:17 +0000 (16:42 -0500)
commit73cd8df887fb5e45f2d49275cedfeab31809ddc8
tree064eed2ebaf4a674f06b6093639549eff83fe131
parentdf052e791cd46bb1e794f282a4f98fe8556fcee7
rgw: use explicit flag to cancel RGWCoroutinesManager::run()

RGWCoroutinesManager::run() was setting ret = -ECANCELED to break out of
the loop when it sees going_down. coroutines that failed with -ECANCELED
were confusing this logic and leading to coroutine deadlock assertions
below. when we hit the going_down case, set a 'canceled' flag, and check
that flag when deciding whether to break out of the loop

Fixes: http://tracker.ceph.com/issues/17465
Signed-off-by: Casey Bodley <cbodley@redhat.com>
src/rgw/rgw_coroutine.cc