summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/sys
Commit message (Collapse)AuthorAgeFilesLines
* Merged out from trunkQPID-2519Stephen D. Huston2011-10-2149-630/+1243
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/branches/QPID-2519@1187375 13f79535-47bb-0310-9956-ffa450edef68
* Undo bad merge from trunk - merged at wrong level.Stephen D. Huston2011-10-2151-1408/+499
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/branches/QPID-2519@1187150 13f79535-47bb-0310-9956-ffa450edef68
* Merge trunk to QPID-2519 branchStephen D. Huston2011-10-2051-499/+1408
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/branches/QPID-2519@1186990 13f79535-47bb-0310-9956-ffa450edef68
* Fix missing QPID_COMMON_EXTERN in sys/Socket.h, causing windows build failure.Alan Conway2011-02-021-2/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1066581 13f79535-47bb-0310-9956-ffa450edef68
* Resolves QPID-3031. Allows client connection options to specify an SSL ↵Jonathan Robie2011-02-022-27/+47
| | | | | | cert-name. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1066508 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3007: Unique management identifier for connections.Alan Conway2011-02-016-10/+21
| | | | | | | | | | | | | | | Management was using remote socket address (host:port) to identify connections, but this is not a unique identifier. Both the local and remote addresses are needed to uniquely identify a connection - see http://www.faqs.org/rfcs/rfc793.html. This was causing management errors (multiple objects using same identifier) and cluster failures (invalid-arg exception) due to inconsistencies caused by the incorrect management map. This commit uses "localhost:localport-remotehost:remoteport" as a unique identifier. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1066220 13f79535-47bb-0310-9956-ffa450edef68
* Rename Rdma send buffer operations.Andrew Stitcher2010-12-237-21/+21
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1052331 13f79535-47bb-0310-9956-ffa450edef68
* Changes due to review comments from Doug Ledford:Andrew Stitcher2010-12-236-25/+26
| | | | | | | | - Removed lock unsafe operation Rdma::QueuePair::bufferAvailable() and replaced the unavailable case with failing getBuffer(). - Improved asserts in the Rdma::QueuePair::getBuffer() code. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1052330 13f79535-47bb-0310-9956-ffa450edef68
* Implementation for v1 rdma protocol - append sent credit and flags wordAndrew Stitcher2010-12-234-26/+77
| | | | | | | | | after sent frame (instead of sending it in immediate data). Small change to send buffer management to support this to 0 dataCount when returning buffers. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1052329 13f79535-47bb-0310-9956-ffa450edef68
* Reduce rdma scatter gathers allocated per queue pair to 1 as iWarpAndrew Stitcher2010-12-231-2/+5
| | | | | | only supports 1 sge. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1052328 13f79535-47bb-0310-9956-ffa450edef68
* Fix error handling for ibv_post_send() & ibv_port_recv()Andrew Stitcher2010-12-231-3/+3
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1052327 13f79535-47bb-0310-9956-ffa450edef68
* Allow for the case where we get an rdma reject because there is no one listeningAndrew Stitcher2010-12-231-4/+14
| | | | | | on the resolved address git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1052326 13f79535-47bb-0310-9956-ffa450edef68
* Factored rdma sending/receiving code out to make manipulatingAndrew Stitcher2010-12-232-24/+42
| | | | | | credit isolated git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1052325 13f79535-47bb-0310-9956-ffa450edef68
* Reject attempts to connect with version of rdma protocol we don't understandAndrew Stitcher2010-12-232-1/+17
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1052324 13f79535-47bb-0310-9956-ffa450edef68
* Plumb rdma protocol version into Rdma::AsynchIOAndrew Stitcher2010-12-235-0/+7
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1052323 13f79535-47bb-0310-9956-ffa450edef68
* Add in some useful rdma warnings when we reject a connectionAndrew Stitcher2010-12-231-1/+10
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1052321 13f79535-47bb-0310-9956-ffa450edef68
* Add code to switch on/off byteswapping of RDMA ConnectionParamsAndrew Stitcher2010-12-232-15/+60
| | | | | | | | depending on detected protocol version. To give some backwards compatibility and fix a previous error which sent connection params in host order. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1052320 13f79535-47bb-0310-9956-ffa450edef68
* Added test into RdmaClient to be sure the messages we receive are theAndrew Stitcher2010-12-231-8/+40
| | | | | | | same as the message we sent. Use a pseudo random non-repetetive stream as the message to be sure there is no reordering or repeating of messages. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1052319 13f79535-47bb-0310-9956-ffa450edef68
* Allow RdmaClient to be interruptedAndrew Stitcher2010-12-231-2/+6
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1052318 13f79535-47bb-0310-9956-ffa450edef68
* QPID-2967 Windows broker fails to destroy connections if client exits abruptlyCharles E. Rolke2010-12-151-3/+4
| | | | | | | In win::AsynchIOReadComplete(): If there is no data, always call notifyEof(). If status is nonZero then also call notifyDisconnect(). Reviewed by astitcher. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1049702 13f79535-47bb-0310-9956-ffa450edef68
* QPID-2966: Add QMF method to dynamically set the log level.Gordon Sim2010-12-102-1/+8
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1044248 13f79535-47bb-0310-9956-ffa450edef68
* Aggregate Timer warnings.Alan Conway2010-11-174-18/+174
| | | | | | | | | | | | The Timer code logs a warning if a timer callback is started late or overruns the start time for the next callback. In cases where there are a lot of these warnings, the time taken to do the logging itself severly worsens the situation. This commit aggregates timer warnings and give a statistical report every 5 seconds at most. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1036169 13f79535-47bb-0310-9956-ffa450edef68
* QPID-2674: prevent callbacks after doDelete has been calledGordon Sim2010-11-121-0/+10
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1034523 13f79535-47bb-0310-9956-ffa450edef68
* Add state constraint annotations to Rdma::AsynchIO;Andrew Stitcher2010-10-121-4/+14
| | | | | | | Simplify state machine slightly git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1021831 13f79535-47bb-0310-9956-ffa450edef68
* Improve the performance of the Rdma::AsynchIO by using a veryAndrew Stitcher2010-10-122-7/+62
| | | | | | | | simple state machine to reduce the context switch for notifyPendingWrite() by allowing it to "hijack" existing concurrent processing on an IO thread. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1021823 13f79535-47bb-0310-9956-ffa450edef68
* Rewrite Rdma::AsynchIO to use deferred code rather than a state machine:Andrew Stitcher2010-10-122-238/+26
| | | | | | | | This eliminates a lot of difficult to understand error prone state machine code git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1021822 13f79535-47bb-0310-9956-ffa450edef68
* Serialise close into the data callbacks:Andrew Stitcher2010-10-122-4/+22
| | | | | | | | | Rejig Rdma::ConnectionManager to have a stop function with a callback and use this to ensure that the Rdma::Connector used by qpid::sys::RdmaConnector is correctly deleted only after it has been actually stopped git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1021819 13f79535-47bb-0310-9956-ffa450edef68
* Make sure that Rdma::Listener can generate no more callbacks after it receivesAndrew Stitcher2010-10-121-0/+12
| | | | | | | a disconnected event for a connection id. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1021818 13f79535-47bb-0310-9956-ffa450edef68
* If we have already stopped an Rdma connection, but we still get a data eventAndrew Stitcher2010-10-121-0/+3
| | | | | | | ignore it git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1021817 13f79535-47bb-0310-9956-ffa450edef68
* Handle Rdma Flush events - instead of reporting to the application justAndrew Stitcher2010-10-121-0/+16
| | | | | | | | return write buffers to the pool and do nothing for recv buffers as the connection must be in an error state now. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1021816 13f79535-47bb-0310-9956-ffa450edef68
* Fix Rdma test server so that you can interrupt it again (since makingAndrew Stitcher2010-10-121-3/+9
| | | | | | | Poller run loop impervious to signals) git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1021815 13f79535-47bb-0310-9956-ffa450edef68
* Catch uncaught exceptions thrown by DispatchHandle callbacks instead of lettingAndrew Stitcher2010-10-121-0/+7
| | | | | | | then destroy the Poller thread. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1021814 13f79535-47bb-0310-9956-ffa450edef68
* Converted four files from DOS format to Unix format to match all of the otherTed Ross2010-10-112-852/+852
| | | | | | | | | files in their respective directories. This is a non-substantive change, only end-of-line formatting was modified. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1021423 13f79535-47bb-0310-9956-ffa450edef68
* Break deadlock caused when ClusterTimer::drop is called concurrently with ↵Alan Conway2010-09-091-5/+8
| | | | | | Timer::add. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@995426 13f79535-47bb-0310-9956-ffa450edef68
* Fix to allow compilation with libibverbs 1.1.2Andrew Stitcher2010-09-082-2/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@995165 13f79535-47bb-0310-9956-ffa450edef68
* Stop the client side Rdma code from receiving connection events before the ↵Andrew Stitcher2010-09-082-0/+5
| | | | | | | | data events are stopped to avoid any events after the Rdma::Connector is deleted git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@995145 13f79535-47bb-0310-9956-ffa450edef68
* Delay daemon side Rdma connection disconnect() so that it happens serialisedAndrew Stitcher2010-09-083-1/+23
| | | | | | to the data channel for the connection. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@995143 13f79535-47bb-0310-9956-ffa450edef68
* Avoid Rdma::AsynchIO leaking when stopped without being drained andAndrew Stitcher2010-09-081-1/+3
| | | | | | | add in asserts to be sure that you call stopped and drained callbacks in the correct state git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@995142 13f79535-47bb-0310-9956-ffa450edef68
* Only delete Rdma server side connections when the client disconnects -Andrew Stitcher2010-09-082-12/+16
| | | | | | | this avoids a race between the disconnect event and deleting the connection upon closing. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@995141 13f79535-47bb-0310-9956-ffa450edef68
* Reordered members of RdmaIOHandler to ensure correct destruction orderAndrew Stitcher2010-09-081-4/+5
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@995140 13f79535-47bb-0310-9956-ffa450edef68
* Improve daemon handling of unexpected RDMA disconnects from clientAndrew Stitcher2010-09-081-21/+48
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@995139 13f79535-47bb-0310-9956-ffa450edef68
* Rearrange drain queue code so that it does't call the callback unless thereAndrew Stitcher2010-09-081-3/+8
| | | | | | are no outstanding write buffers git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@995137 13f79535-47bb-0310-9956-ffa450edef68
* Coalesce checking for the drained and stopped conditions into a singleAndrew Stitcher2010-09-082-17/+22
| | | | | | function git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@995136 13f79535-47bb-0310-9956-ffa450edef68
* Reorder some code for improved intellegibilityAndrew Stitcher2010-09-081-15/+10
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@995135 13f79535-47bb-0310-9956-ffa450edef68
* Remove write after frees in Rdma::AsynchIO and qpid::client::RdmaConnectorAndrew Stitcher2010-09-081-1/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@995134 13f79535-47bb-0310-9956-ffa450edef68
* Dispose the queue pair before acknowledging channel events when destroyingAndrew Stitcher2010-09-081-3/+6
| | | | | | Rdma::QueuePair to stop any events being processed during destruction git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@995133 13f79535-47bb-0310-9956-ffa450edef68
* Use structures with much less dynamic allocation to hold rdma buffersAndrew Stitcher2010-09-082-18/+22
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@995132 13f79535-47bb-0310-9956-ffa450edef68
* Refactored Rdma write buffers to be controlled by the rdma_wrapper layerAndrew Stitcher2010-09-084-56/+67
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@995131 13f79535-47bb-0310-9956-ffa450edef68
* Move rdma recv buffers to a single large allocation rather than piecemeal ↵Andrew Stitcher2010-09-085-10/+53
| | | | | | allocations git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@995130 13f79535-47bb-0310-9956-ffa450edef68
* Stop using references to intrusive_ptr in Rdma codeAndrew Stitcher2010-09-082-20/+20
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@995127 13f79535-47bb-0310-9956-ffa450edef68