Re: [PATCH v3 2/5] ceph: replace the request_tree rbtree with an xarray keyed by r_tid
Alex Markuze <[email protected]>
| Newsgroups | org.kernel.vger.ceph-devel |
|---|---|
| Message-ID | <[email protected]> |
Hi Xiubo, In __register_request(), ceph_mdsc_get_request(req) bumps the refcount before xa_store(). If xa_store() fails, the function sets r_err = -ENOMEM and returns without dropping the extra reference. Since the request never enters the xarray, __unregister_request() is never called to balance the get, so the ref leaks permanently. Adding ceph_mdsc_put_request(req) in the xa_store error path should fix it. -- Alex Markuze