cURL / Mailing Lists / curl-library / Single Mail

curl-library

Re: download thread hung in poll()

From: Alex Loukissas <alex_at_maginatics.com>
Date: Mon, 7 Nov 2011 11:59:14 -0800

I have been debugging further, having rebuilt libcurl with debug info.
Here's the backtrace from within the hung thread:

(gdb) bt
#0 0x0000000000844ed3 in poll ()
#1 0x0000000000561674 in Curl_socket_ready (readfd=20, writefd=-1,
timeout_ms=1000) at select.c:215
#2 0x000000000058b384 in Transfer (conn=0x1a60df8) at transfer.c:1383
#3 0x000000000058c4a6 in Curl_do_perform (data=0x199ab28) at transfer.c:2137
#4 0x000000000058c750 in Curl_perform (data=0x199ab28) at transfer.c:2261
#5 0x00000000005580ba in curl_easy_perform (curl=0x199ab28) at easy.c:537

and

(gdb) frame 1
#1 0x0000000000561674 in Curl_socket_ready (readfd=20, writefd=-1,
timeout_ms=1000) at select.c:215
215 r = poll(pfd, num, pending_ms);
(gdb) print pfd
$1 = {{fd = 20, events = 195, revents = 0}, {fd = 5811065, events = 0,
revents = 0}}

From what I understand, poll is hung on a bad write file descriptor, correct?

FYI, all the above is with curl-7.22.0.

Any insights?

Thanks
Alex
-------------------------------------------------------------------
List admin: http://cool.haxx.se/list/listinfo/curl-library
Etiquette: http://curl.haxx.se/mail/etiquette.html
Received on 2011-11-07