diff options
author | Daniel Stenberg <daniel@haxx.se> | 2006-12-05 13:37:05 +0000 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2006-12-05 13:37:05 +0000 |
commit | 3ce43764be4c7b58481b4b7a7d9b77e2c02724cf (patch) | |
tree | 688a6f4229c37c04b92f67ea2af3505622f3845e /CHANGES | |
parent | b555c60e49c07975932756c881bcc086d8a05d52 (diff) |
Matt Witherspoon fixed a problem case when the CPU load went to 100% when a
HTTP upload was disconnected:
"What appears to be happening is that my system (Linux 2.6.17 and 2.6.13) is
setting *only* POLLHUP on poll() when the conditions in my previous mail
occur. As you can see, select.c:Curl_select() does not check for POLLHUP. So
basically what was happening, is poll() was returning immediately (with
POLLHUP set), but when Curl_select() looked at the bits, neither POLLERR or
POLLOUT was set. This still caused Curl_readwrite() to be called, which
quickly returned. Then the transfer() loop kept continuing at full speed
forever."
Diffstat (limited to 'CHANGES')
-rw-r--r-- | CHANGES | 13 |
1 files changed, 13 insertions, 0 deletions
@@ -6,6 +6,19 @@ Changelog +Daniel (5 December 2006) +- Matt Witherspoon fixed a problem case when the CPU load went to 100% when a + HTTP upload was disconnected: + + "What appears to be happening is that my system (Linux 2.6.17 and 2.6.13) is + setting *only* POLLHUP on poll() when the conditions in my previous mail + occur. As you can see, select.c:Curl_select() does not check for POLLHUP. So + basically what was happening, is poll() was returning immediately (with + POLLHUP set), but when Curl_select() looked at the bits, neither POLLERR or + POLLOUT was set. This still caused Curl_readwrite() to be called, which + quickly returned. Then the transfer() loop kept continuing at full speed + forever." + Daniel (1 December 2006) - Toon Verwaest reported that there are servers that send the Content-Range: header in a third, not suppported by libcurl, format and we agreed that we |