summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/sys/rdma/rdma_wrap.cpp
diff options
context:
space:
mode:
authorAndrew Stitcher <astitcher@apache.org>2008-11-07 16:20:24 +0000
committerAndrew Stitcher <astitcher@apache.org>2008-11-07 16:20:24 +0000
commit69f969e0f771c0197ad24a00311ecaa78debe4e0 (patch)
tree552f639f58818705e963ea87c5f2110e7ea16b05 /cpp/src/qpid/sys/rdma/rdma_wrap.cpp
parentfbb5736c3d32ef829977be6bd598450fc8bb63d5 (diff)
downloadqpid-python-69f969e0f771c0197ad24a00311ecaa78debe4e0.tar.gz
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
Diffstat (limited to 'cpp/src/qpid/sys/rdma/rdma_wrap.cpp')
-rw-r--r--cpp/src/qpid/sys/rdma/rdma_wrap.cpp7
1 files changed, 7 insertions, 0 deletions
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