+11
−5
+39
−28
+3
−2
Loading
There is a race condition between controller destruction and subsystem state change, e.g. admin qpair may already be freed when a namespace is added or removed. As result in function poll_group_update_subsystem we may get heap-use-after-free error Another problem is that some qpair's live time may exceed controller's life time. To avoid it, start controller destruction process when the last qpair finished the disconnect process (previously controller started the descruction process before the last qpair starts to disconnect and it could lead to raise conditions) Fixes #2055 Signed-off-by:Alexey Marchuk <alexeymar@mellanox.com> Change-Id: Ibc99b1d840e4796e1588cc217d65834bb556b909 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/9995 Tested-by:
SPDK CI Jenkins <sys_sgci@intel.com> Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com> Reviewed-by:
Ben Walker <benjamin.walker@intel.com> Reviewed-by:
Jim Harris <james.r.harris@intel.com>