From: Hongtong Liu Date: Tue, 17 Jan 2017 07:41:08 +0000 (+0800) Subject: bluestore: Release segs before delete task when write fails X-Git-Tag: v12.0.0~109^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=refs%2Fpull%2F12956%2Fhead;p=ceph.git bluestore: Release segs before delete task when write fails Fix assert failure in ~Task(). Signed-off-by: Hongtong Liu --- diff --git a/src/os/bluestore/NVMEDevice.cc b/src/os/bluestore/NVMEDevice.cc index b38fad154aa7..df2fb52667bc 100644 --- a/src/os/bluestore/NVMEDevice.cc +++ b/src/os/bluestore/NVMEDevice.cc @@ -417,6 +417,7 @@ void SharedDriverData::_aio_thread() data_buf_reset_sgl, data_buf_next_sge); if (r < 0) { t->ctx->nvme_task_first = t->ctx->nvme_task_last = nullptr; + t->release_segs(); delete t; derr << __func__ << " failed to do write command" << dendl; ceph_abort();