Verbs Init code hangs when it tries connecting an inactive device
This issue was encountered when Yong Qin from Mellanox, tried running a charm++ application on their cluster which had multiple hca cards. The verbs init code should use ibstatus and find the active devices and try to connect to only the active devices. Currently, it tries to connect to the first device returned by ibv_devices. If the first device returned by ibv_devices is inactive, the program hangs.
The fix should be to connect to the only active devices. If all the devices are inactive, an appropriate error message should be displayed.