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?