[sheepdog] Segfault for 0.4.0 branch

Liu Yuan namei.unix at gmail.com
Mon Jul 9 11:45:23 CEST 2012


On 07/09/2012 09:58 AM, Liu Yuan wrote:
> Got an weird segfault,
> 
> (gdb) where
> #0  0x0000000000411936 in do_process_work (work=0xd13c70) at ops.c:992
> #1  0x000000000040ed05 in worker_routine (arg=0xd12a20) at work.c:171
> #2  0x00007f43f992c971 in start_thread (arg=<value optimized out>) at
> pthread_create.c:304
> #3  0x00007f43f8eeef3d in clone () at
> ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
> #4  0x0000000000000000 in ?? ()
> 
> sheep.log:
> ...
> Jul 09 09:47:23 [main] client_handler(764) connection seems to be dead
> Jul 09 09:47:23 [main] clear_client(703) refcnt:0, fd:14, ::1:43328
> Jul 09 09:47:23 [main] destroy_client(672) connection from: ::1:43328
> Jul 09 09:47:23 [main] cdrv_cpg_deliver(448) 5
> Jul 09 09:47:23 [main] sd_notify_handler(851) size: 96, from: IPv4
> ip:127.0.0.1 port:7000
> Jul 09 09:47:23 [main] client_tx_handler(663) connection from: 13, ::1:43330
> Jul 09 09:47:23 [main] client_handler(764) connection seems to be dead
> Jul 09 09:47:23 [main] clear_client(703) refcnt:0, fd:13, ::1:43330
> Jul 09 09:47:23 [main] destroy_client(672) connection from: ::1:43330
> Jul 09 09:47:23 [main] listen_handler(819) accepted a new connection: 13
> Jul 09 09:47:23 [main] listen_handler(819) accepted a new connection: 14
> Jul 09 09:47:23 [block] do_process_work(990) 80, 0 , 32579 <--- XXX
> Jul 09 09:47:23 [main] client_rx_handler(577) connection from: 14, ::1:43337
> Jul 09 09:47:23 [main] queue_request(323) 2
> Jul 09 09:47:23 [main] crash_handler(408) sheep pid 5326 exited
> unexpectedly.
> 
> Thanks,
> Yuan
> 

These segmentation fault is suspected to be caused by

* <cc458b9> 2012-07-06 sheep: free all requests when connection is dead
* <7ce7048> 2012-07-06 sheep: simplify client_decref() and move it into
free_request() and add a helper function

set.

Thanks,
Yuan





More information about the sheepdog mailing list