Commit b68f313c9139 ("nvme: Record maximum allowed request size") introduced a use of "identify" past it being passed to free(). Latch the value of interest into a local variable.
Reported-by: Coverity (ID 1497613) Signed-off-by: Jan Beulich jbeulich@suse.com --- It was a Xen Project Coverity run which reported this after our updating to 1.15.0.
--- a/src/hw/nvme.c +++ b/src/hw/nvme.c @@ -620,6 +620,7 @@ identify->nn, (identify->nn == 1) ? "" : "s");
ctrl->ns_count = identify->nn; + u8 mdts = identify->mdts; free(identify);
if ((ctrl->ns_count == 0) || nvme_create_io_queues(ctrl)) { @@ -631,7 +632,7 @@ /* Populate namespace IDs */ int ns_idx; for (ns_idx = 0; ns_idx < ctrl->ns_count; ns_idx++) { - nvme_probe_ns(ctrl, ns_idx, identify->mdts); + nvme_probe_ns(ctrl, ns_idx, mdts); }
dprintf(3, "NVMe initialization complete!\n");