+13
−0
Loading
Currently the namespaces are depopulated in two cases: if the controller is detached (either due to its hot unplug or RPC call) or due to "namespace attribute changed" asynchronous event. It means that during shutdown, when nvme_bdev_ctrlr is destroyed, the namespaces aren't depopulated. For regular NVMe namespaces it isn't a big issue, since their only depopulate task is to unregister bdevs created on that namespace, which is already done by the bdev layer. However, it can be a problem for other types of namespaces (e.g. Open Channel), as they might allocate their own context in nvme_bdev_ns.type_ctx, which, unless the namespace is depopulated, cannot be freed. Change-Id: I91c7f2a50b206b45eb5bdcada278d6454c4cf144 Signed-off-by:Konrad Sztyber <konrad.sztyber@intel.com> Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/478190 Tested-by:
SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by:
Jim Harris <james.r.harris@intel.com> Reviewed-by:
Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>