]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
rgw/http: finish_request() after logging errors 59243/head
authorCasey Bodley <cbodley@redhat.com>
Thu, 15 Aug 2024 17:46:07 +0000 (13:46 -0400)
committerCasey Bodley <cbodley@redhat.com>
Thu, 15 Aug 2024 17:46:09 +0000 (13:46 -0400)
commit0e00093771010eef907f77eeb281ca2ee789ad9c
tree9418f72a04ccee7466efb46b62736490c9dddb24
parentdbcd88835cbd4aabf153469cde0bacb3eb461941
rgw/http: finish_request() after logging errors

the http manager's background thread is processing responses and logging
any errors. but its call to finish_request() -> complete_request() drops
its reference with req_data->put() before logging the error message in
req_data->error_buf. if put() dropped the last reference, we'd access
error_buf after it's freed

Fixes: https://tracker.ceph.com/issues/67522
Signed-off-by: Casey Bodley <cbodley@redhat.com>
src/rgw/rgw_http_client.cc