]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
rgw: remove circular reference in RGWAsyncRadosRequest 11815/head
authorCasey Bodley <cbodley@redhat.com>
Mon, 7 Nov 2016 15:58:50 +0000 (10:58 -0500)
committerCasey Bodley <cbodley@redhat.com>
Thu, 10 Nov 2016 13:56:09 +0000 (08:56 -0500)
RGWAsyncRadosRequest does not need a reference to its calling coroutine,
it only needs the completion notifier. this eliminates a circular
reference between RGWAsyncRadosRequest and the coroutines that create
them

Fixes: http://tracker.ceph.com/issues/17792
Fixes: http://tracker.ceph.com/issues/17793
Signed-off-by: Casey Bodley <cbodley@redhat.com>
src/rgw/rgw_cr_rados.h

index ad13ccd908974ce4f547572e6773ed5e4132c83b..99cd68f7f44abc15a95ecb37f92934f89fd9cedb 100644 (file)
@@ -22,11 +22,9 @@ public:
   RGWAsyncRadosRequest(RGWCoroutine *_caller, RGWAioCompletionNotifier *_cn) : caller(_caller), notifier(_cn), retcode(0),
                                                                                done(false), lock("RGWAsyncRadosRequest::lock") {
     notifier->get();
-    caller->get();
   }
   virtual ~RGWAsyncRadosRequest() {
     notifier->put();
-    caller->put();
   }
 
   void send_request() {