]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
rgw: http client drops mutex before suspending coroutine 29553/head
authorCasey Bodley <cbodley@redhat.com>
Thu, 8 Aug 2019 14:06:17 +0000 (10:06 -0400)
committerCasey Bodley <cbodley@redhat.com>
Thu, 8 Aug 2019 14:06:40 +0000 (10:06 -0400)
commit57887f6a364e06ade69fdf2277122c496ab8a134
tree485c5729b13028758e477914fb30cb18c3300e66
parentfef63ad340985245fc8fc2fcb0777105b49077a6
rgw: http client drops mutex before suspending coroutine

the lock can't be held over async_wait(), because the call to finish()
won't be able to reacquire the lock in order to fire the completion.
coroutines may also resume on a different thread, and you can't unlock a
mutex that was locked on another thread

Reported-by: Yuval Lifshitz <yuvalif@yahoo.com>
Signed-off-by: Casey Bodley <cbodley@redhat.com>
src/rgw/rgw_http_client.cc