On Mon, Mar 3, 2014 at 11:59 PM, Alex Elder <elder@xxxxxxxx> wrote: > On 03/03/2014 09:38 AM, Ilya Dryomov wrote: >> >> Doing rbd_obj_request_put() in rbd_img_request_fill() error paths is >> not only insufficient, but also triggers an rbd_assert() in >> rbd_obj_request_destroy(): >> >> Assertion failure in rbd_obj_request_destroy() at line 1867: >> rbd_assert(obj_request->img_request == NULL); > > > Does this have a tracker entry separate from 7327? (I > didn't look, just curious.) No, I don't think so. There are though 3 entries for the opposite assert, on which I unfortunately don't have anything yet: http://tracker.ceph.com/issues/5454 http://tracker.ceph.com/issues/5662 http://tracker.ceph.com/issues/7327 > >> rbd_img_obj_request_add() adds obj_requests to the img_request, the >> opposite is rbd_img_obj_request_del(). Use it.h > > > This is the main bug here, and this is the right fix. > > >> While at it, commit 03507db631c94 ("rbd: fix buffer size for writes to >> images with snapshots") moved the call to rbd_img_obj_request_add() up, >> making the out_partial label bogus. Remove it. > > > Yes, this is also correct, and is a bug fix. Since it's a distinct > bug *maybe* you could commit it separately, but I don't really think > it's that important. Done. > > Very nice. > > Reviewed-by: Alex Elder <elder@xxxxxxxxxx> Thanks, Ilya -- To unsubscribe from this list: send the line "unsubscribe ceph-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html