Christoph, > static void nvme_free_ns(struct kref *kref) > { > struct nvme_ns *ns = container_of(kref, struct nvme_ns, kref); > > + if (ns->head) > + nvme_put_ns_head(ns->head); > + When can we not have a ns-head set? AFAICT, if nvme_alloc_ns succeeded, we have it set don't we?