[zeromq-dev] need help with linux platform

Dhammika Pathirana dhammika at gmail.com
Wed Feb 16 18:39:09 CET 2011

On Tue, Feb 15, 2011 at 11:39 PM, Martin Sustrik <sustrik at 250bpm.com> wrote:
> On 02/16/2011 07:01 AM, Dhammika Pathirana wrote:
>> We have to either block on send() or return EAGAIN, but these are not
>> trivial changes :-(
> There's no easy solution. Blocking leads to deadlocks. EAGAIN is just
> shifting the responsibility to the caller. What should we do when
> malibox_t::send() returns EAGAIN? Drop the command? If so, missing commands
> would break the internal algorithms.

Why don't we fix the deadlock, that sounds like a bug,

> The only sane way IMO is to carefully modify the algorithms to limit the
> number of commands that can exist at the same time. Say: At most 16k of
> commands at any single point in time. (Similar to how linux kernel
> hard-limits the size of callstack.)

This'll add more bookkeeping for regular use cases.


More information about the zeromq-dev mailing list