[zeromq-dev] Segfault in reader_t::read (pipe.cpp)

Michael Small michaelsmall at me.com
Mon Oct 25 06:16:17 CEST 2010


I've managed to come up with a reproducible segmentation fault in zmq::reader_t::read during a stress test.

Is there a proper channel through which bugs should be reported? I haven't had time to delve into the code at the moment, so I just have the relevant stack trace:

Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: KERN_INVALID_ADDRESS at address: 0x0000000000000000
0x00000001000110d4 in zmq::reader_t::read (this=0x100302090, msg_=0x7fff5fbfea80) at pipe.cpp:78
78              endpoint->kill (this);

(gdb) bt
#0  0x00000001000110d4 in zmq::reader_t::read (this=0x100302090, msg_=0x7fff5fbfea80) at pipe.cpp:78
#1  0x0000000100013058 in zmq::rep_t::xrecv (this=0x100300130, msg_=0x7fff5fbfea80, flags_=<value temporarily unavailable, due to optimizations>) at rep.cpp:199
#2  0x000000010001625e in zmq::socket_base_t::recv (this=0x100300130, msg_=0x7fff5fbfea80, flags_=0) at socket_base.cpp:387
#3  0x00000001000050cf in zmq::socket_t::recv (this=0x7fff5fbfed18, msg_=0x7fff5fbfea80, flags_=0) at zmq.hpp:256
#4  0x0000000100005350 in zmq_util::Socket::recv<fsm::wire::MessageId> (this=0x7fff5fbfed18, t=@0x7fff5fbfebe8)
#5  0x0000000100006ea7 in Daemon::process_next_request (this=0x7fff5fbfec60)
#6  0x0000000100001b65 in main (argv=0x7fff5fbfed68)

(gdb) print endpoint
$1 = ('zmq::i_endpoint' *) 0x0

So endpoint is NULL, either this should be checked, or shouldn't ever happen (then should be an assert?) .. 





More information about the zeromq-dev mailing list