1. 28 Jul, 2015 2 commits
    • Brian Silverman's avatar
      Fix eventfd read handling under heavy load. · 62a0e450
      Brian Silverman authored
      I had the assertion below fail occasionally when running the libzmq
      tests under heavy CPU load on linux 3.16.0-4-amd64.
      62a0e450
    • Brian Silverman's avatar
      Fix a documented memory leak. · 97969808
      Brian Silverman authored
      Despite the old comments, re-initing the msg_t leaks a refcount to
      metadata in some situations.
      
      v1_decoder looks like it isn't tested any more, but it seems like a good
      idea to fix it because it has the exact same piece of buggy code
      v2_decoder does.
      97969808
  2. 27 Jul, 2015 2 commits
  3. 25 Jul, 2015 1 commit
  4. 23 Jul, 2015 4 commits
  5. 22 Jul, 2015 4 commits
  6. 20 Jul, 2015 1 commit
  7. 08 Jul, 2015 1 commit
  8. 07 Jul, 2015 2 commits
  9. 05 Jul, 2015 4 commits
  10. 02 Jul, 2015 1 commit
  11. 01 Jul, 2015 2 commits
  12. 30 Jun, 2015 3 commits
  13. 26 Jun, 2015 1 commit
    • Jonathan Reams's avatar
      Fix units and default values for heartbeats options · e9a5bc8d
      Jonathan Reams authored
      Set the ZMQ_HEARTBEAT_TIMEOUT to default to the value of
      ZMQ_HEARTBEAT_IVL if it's not explicitly set.
      Change the units of ZMQ_HEARTBEAT_TTL to milliseconds in the API
      and round down to the nearest decisecond so that all the options
      are using the same units.
      Make the maximum heartbeat TTL match the spec (6553 seconds)
      e9a5bc8d
  14. 24 Jun, 2015 1 commit
  15. 23 Jun, 2015 2 commits
  16. 14 Jun, 2015 3 commits
    • Jens Auer's avatar
      Reuse buffer when no messages depend on it. · e70b5efa
      Jens Auer authored
      e70b5efa
    • Jens Auer's avatar
      Fixed wrong handling of shared messages · 51cb57e2
      Jens Auer authored
      The shared reference count was not shared but copied. msg_t cannot
      store the refcnt itsef but has to store a pointer to an externally
      allocated (shared) refcnter. The changes to lmsg are reverted to
      use content_t again. Howver, this introduces an allocation in v2_decoder
      when creating the message which can be avoided. When allocating the reception
      buffer, space is allocated for the maximum number of reference counts
      (8192 / max_vsm_size = 8192/64 = 128 zmq:atomic_counter objects). This
      increases the buffer by 128*sizeof(atomic_counter) = 128*4 = 512 bytes only.
      When creating a message, the refcnt member is set to the address of one of the
      pre-allocated atomic_counter_t objects. To do so, a new msg_t type zcmsg
      is introduced because msg::copy must discriminate between the message types
      when releasing memory.
      51cb57e2
    • Jens Auer's avatar
      Fixed wrong buffer end detection in v2_decoder. · dfe19080
      Jens Auer authored
      zero-copy msg_t::init cannot be used when the message exceeds either
      the buffer end or the last received byte. To detect this, the buffer
      is now resized to the numnber of received bytes.
      dfe19080
  17. 13 Jun, 2015 1 commit
  18. 07 Jun, 2015 2 commits
  19. 05 Jun, 2015 3 commits