4ea996ce19
This issue was found by code inspection. It only occurs when pdk_nvmf_transport_poll_group_create() itself calls spdk_nvmf_transport_poll_group_destroy(). Other transports at this time do not show this issue. spdk_nvmf_rdma_poll_group_destroy() depends on rgroup being assigned a transport, which is only being done on generic nvmf layer using spdk_nvmf_transport_poll_group_create() after successful spdk_nvmf_rdma_poll_group_create(). When failure occurs during create, such assignment was not performed so any references to rtransport will segfault. Reported-by: Jacek Kalwas <jacek.kalwas@intel.com> Signed-off-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com> Change-Id: Id54482d562bd6d7c71371306cf1de93bc05f4e8a Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/475002 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Ben Walker <benjamin.walker@intel.com> Reviewed-by: Jim Harris <james.r.harris@intel.com> Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com> Reviewed-by: Alexey Marchuk <alexeymar@mellanox.com> |
||
---|---|---|
.. | ||
ctrlr_bdev.c | ||
ctrlr_discovery.c | ||
ctrlr.c | ||
fc_ls.c | ||
fc.c | ||
Makefile | ||
nvmf_fc.h | ||
nvmf_internal.h | ||
nvmf_rpc.c | ||
nvmf.c | ||
rdma.c | ||
subsystem.c | ||
tcp.c | ||
transport.c | ||
transport.h |