From 69f969e0f771c0197ad24a00311ecaa78debe4e0 Mon Sep 17 00:00:00 2001 From: Andrew Stitcher Date: Fri, 7 Nov 2008 16:20:24 +0000 Subject: QPID-1438: Before registering the rdma daemon transport plugin check whether there are any rdma devices - if not don't register git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@712182 13f79535-47bb-0310-9956-ffa450edef68 --- cpp/src/qpid/sys/rdma/rdma_wrap.cpp | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'cpp/src/qpid/sys/rdma/rdma_wrap.cpp') diff --git a/cpp/src/qpid/sys/rdma/rdma_wrap.cpp b/cpp/src/qpid/sys/rdma/rdma_wrap.cpp index ac0813ffd6..9e249210d5 100644 --- a/cpp/src/qpid/sys/rdma/rdma_wrap.cpp +++ b/cpp/src/qpid/sys/rdma/rdma_wrap.cpp @@ -10,6 +10,13 @@ namespace Rdma { 5, // .retry_count 7 // .rnr_retry_count }; + + // This is moderately inefficient so don't use in a critical path + int deviceCount() { + int count; + ::ibv_free_device_list(::ibv_get_device_list(&count)); + return count; + } ::rdma_conn_param ConnectionEvent::getConnectionParam() const { // It's badly documented, but it seems from the librdma source code that all the following -- cgit v1.2.1