diff --git a/lib/nvmf/subsystem.c b/lib/nvmf/subsystem.c index 64b0d2fa55..15e6753ffe 100644 --- a/lib/nvmf/subsystem.c +++ b/lib/nvmf/subsystem.c @@ -1964,6 +1964,11 @@ exit: } } + if (update_sgroup && ns->ptpl_activated) { + if (nvmf_ns_update_reservation_info(ns)) { + status = SPDK_NVME_SC_INTERNAL_DEVICE_ERROR; + } + } req->rsp->nvme_cpl.status.sct = SPDK_NVME_SCT_GENERIC; req->rsp->nvme_cpl.status.sc = status; return update_sgroup; @@ -2064,6 +2069,11 @@ nvmf_ns_reservation_release(struct spdk_nvmf_ns *ns, } exit: + if (update_sgroup && ns->ptpl_activated) { + if (nvmf_ns_update_reservation_info(ns)) { + status = SPDK_NVME_SC_INTERNAL_DEVICE_ERROR; + } + } req->rsp->nvme_cpl.status.sct = SPDK_NVME_SCT_GENERIC; req->rsp->nvme_cpl.status.sc = status; return update_sgroup;