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/RdmaIOPlugin.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'cpp/src/qpid/sys/RdmaIOPlugin.cpp') diff --git a/cpp/src/qpid/sys/RdmaIOPlugin.cpp b/cpp/src/qpid/sys/RdmaIOPlugin.cpp index 4316d7b582..3c1d57480a 100644 --- a/cpp/src/qpid/sys/RdmaIOPlugin.cpp +++ b/cpp/src/qpid/sys/RdmaIOPlugin.cpp @@ -214,12 +214,18 @@ static class RdmaIOPlugin : public Plugin { } void initialize(Target& target) { + // Check whether we actually have any rdma devices + if ( Rdma::deviceCount() == 0 ) { + QPID_LOG(info, "Rdma: Disabled: no rdma devices found"); + return; + } + broker::Broker* broker = dynamic_cast(&target); // Only provide to a Broker if (broker) { const broker::Broker::Options& opts = broker->getOptions(); ProtocolFactory::shared_ptr protocol(new RdmaIOProtocolFactory(opts.port, opts.connectionBacklog)); - QPID_LOG(info, "Listening on RDMA port " << protocol->getPort()); + QPID_LOG(info, "Rdma: Listening on RDMA port " << protocol->getPort()); broker->registerProtocolFactory("rdma", protocol); } } -- cgit v1.2.1