+36
−31
+8
−1
Loading
Previously we had allocated temporary context, struct _iscsi_conn_remove_ctx to process LUN hotplug. However, we had to consider out of memory during connection is active, and we could not use any poller to process LUN hotplug because LUN hotplug may conflict with connection exit, and this possible conflict made us very difficult to use poller for LUN hotplug. Introducing struct spdk_iscsi_lun will resolve all these issues. Allocate struct spdk_iscsi_lun per LUN and store connection, LUN, and LUN's descriptor into the struct. Then use the struct for LUN hotplug and free the struct after LUN is closed when LUN is removed or connection exits. struct spdk_iscsi_lun is similar with struct spdk_nvmf_ns in NVMf library. Signed-off-by:Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com> Change-Id: Ice26330f3948070c96d2fb53b94941be3b467079 Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/476113 Tested-by:
SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by:
Changpeng Liu <changpeng.liu@intel.com> Reviewed-by:
Jim Harris <james.r.harris@intel.com>