Description
Segmentation fault sometime
(gdb) bt #0 0x000000000073334a in operator IOBufferBlock* (nh=0x2b4d9e1e8b50, vc=0x2aaac11114d0, thread=0x2b4d9e1e5010) at ../../lib/ts/Ptr.h:326 #1 first_write_block (nh=0x2b4d9e1e8b50, vc=0x2aaac11114d0, thread=0x2b4d9e1e5010) at ../../iocore/eventsystem/I_IOBuffer.h:920 #2 read_from_net (nh=0x2b4d9e1e8b50, vc=0x2aaac11114d0, thread=0x2b4d9e1e5010) at UnixNetVConnection.cc:244 #3 0x0000000000727a62 in NetHandler::mainNetEvent (this=0x2b4d9e1e8b50, event=<value optimized out>, e=<value optimized out>) at UnixNet.cc:399 #4 0x00000000007538f5 in handleEvent (this=0x2b4d9e1e5010, e=0x2b4d9f806d80, calling_code=5) at I_Continuation.h:146 #5 EThread::process_event (this=0x2b4d9e1e5010, e=0x2b4d9f806d80, calling_code=5) at UnixEThread.cc:144 #6 0x000000000075404b in EThread::execute (this=0x2b4d9e1e5010) at UnixEThread.cc:268 #7 0x0000000000752d3a in spawn_thread_internal (a=0x157a1b0) at Thread.cc:88 #8 0x00002b4d9b0fa9d1 in start_thread () from /lib64/libpthread.so.0 #9 0x00002b4d9c0f19dd in clone () from /lib64/libc.so.6 (gdb) f 2 #2 read_from_net (nh=0x2b4d9e1e8b50, vc=0x2aaac11114d0, thread=0x2b4d9e1e5010) at UnixNetVConnection.cc:244 244 IOBufferBlock *b = buf.writer()->first_write_block(); (gdb) l 239 // read data 240 int64_t rattempted = 0, total_read = 0; 241 int niov = 0; 242 IOVec tiovec[NET_MAX_IOV]; 243 if (toread) { 244 IOBufferBlock *b = buf.writer()->first_write_block(); 245 do { 246 niov = 0; 247 rattempted = 0; 248 while (b && niov < NET_MAX_IOV) { (gdb) p buf $1 = (MIOBufferAccessor &) @0x2aaac1111608: {mbuf = 0x0, entry = 0x0} (gdb) p toread $2 = 7768 (gdb)
at line 244 ,mbuf = 0x0, so buf.writer() return NULL