summaryrefslogtreecommitdiffstats
path: root/lib/Makefile
diff options
context:
space:
mode:
authorAlex Elder <elder@inktank.com>2012-11-30 09:59:47 -0600
committerAlex Elder <elder@inktank.com>2013-01-17 16:34:58 -0600
commit1821665749a3d7e26ad470c63fc2c46990dc6041 (patch)
tree5bcb560bcb31abf5af0dc723ccc4485f6062e86f /lib/Makefile
parent2e53c6c379b65372df21f4d6019f6eb63af81384 (diff)
downloadtalos-op-linux-1821665749a3d7e26ad470c63fc2c46990dc6041.tar.gz
talos-op-linux-1821665749a3d7e26ad470c63fc2c46990dc6041.zip
rbd: don't leak rbd_req for rbd_req_sync_notify_ack()
When rbd_req_sync_notify_ack() calls rbd_do_request() it supplies rbd_simple_req_cb() as its callback function. Because the callback is supplied, an rbd_req structure gets allocated and populated so it can be used by the callback. However rbd_simple_req_cb() is not freeing (or even using) the rbd_req structure, so it's getting leaked. Since rbd_simple_req_cb() has no need for the rbd_req structure, just avoid allocating one for this case. Of the three calls to rbd_do_request(), only the one from rbd_do_op() needs the rbd_req structure, and that call can be distinguished from the other two because it supplies a non-null rbd_collection pointer. So fix this leak by only allocating the rbd_req structure if a non-null "coll" value is provided to rbd_do_request(). Signed-off-by: Alex Elder <elder@inktank.com> Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
Diffstat (limited to 'lib/Makefile')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud