This results in a hang on windows, since closing the device frees the event processing thread.
Signed-off-by: Sean Hefty <[email protected]> --- dapl/openib_ucm/device.c | 9 +++++---- 1 files changed, 5 insertions(+), 4 deletions(-) diff --git a/dapl/openib_ucm/device.c b/dapl/openib_ucm/device.c index 90a044e..4f26e87 100644 --- a/dapl/openib_ucm/device.c +++ b/dapl/openib_ucm/device.c @@ -354,16 +354,17 @@ DAT_RETURN dapls_ib_close_hca(IN DAPL_HCA * hca_ptr) } } + dapl_os_lock_destroy(&hca_ptr->ib_trans.lock); + dapl_os_lock_destroy(&hca_ptr->ib_trans.llock); + destroy_cr_pipe(hca_ptr); /* no longer need pipe */ + ucm_service_destroy(hca_ptr); + if (hca_ptr->ib_hca_handle != IB_INVALID_HANDLE) { if (ibv_close_device(hca_ptr->ib_hca_handle)) return (dapl_convert_errno(errno, "ib_close_device")); hca_ptr->ib_hca_handle = IB_INVALID_HANDLE; } - dapl_os_lock_destroy(&hca_ptr->ib_trans.lock); - dapl_os_lock_destroy(&hca_ptr->ib_trans.llock); - destroy_cr_pipe(hca_ptr); /* no longer need pipe */ - ucm_service_destroy(hca_ptr); return (DAT_SUCCESS); } -- 1.5.2.5 _______________________________________________ ofw mailing list [email protected] http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ofw
