View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0002018 | GNUnet | transport service | public | 2011-12-20 22:55 | 2024-05-03 14:01 |
Reporter | amatus | Assigned To | Christian Grothoff | ||
Priority | urgent | Severity | major | Reproducibility | always |
Status | closed | Resolution | fixed | ||
Platform | amd64 | OS | Debian | OS Version | squeeze |
Product Version | 0.9.0 | ||||
Target Version | 0.9.2 | Fixed in Version | 0.9.2 | ||
Summary | 0002018: http(s) transport eats cpu | ||||
Description | mifritscher has found that running with http(s) transports enabled gnunet-service-transport pegs his cpu. | ||||
Tags | No tags attached. | ||||
related to | 0002085 | closed | Christian Grothoff | libmicrohttpd | MHD_get_timeout relies on uninitialized variable, leads to busy waiting sometimes |
|
What does 'contrib/report.sh' say on that system? Also, which version of GNU libmicrohttpd is installed? |
|
Attaching gdb and giving us some traces would also be wonderful... |
|
locate microhttpd: /usr/local/lib/libmicrohttpd.so.10.14.0 (compiled yesterday fresh vom svn) report.sh: OS : Linux OS RELEASE : 2.6.32-5-openvz-amd64 HARDWARE : x86_64 gcc : gcc (Debian 4.4.5-8) 4.4.5 autoconf : 2.67 automake : 1.11.1 libtool : 2.2.6b libextractor : v0.6.3 GNUnet 0.8 : Not Found (good) GNUnet 0.9 : 0.9.0 libgcrypt : 1.4.5 mysql : 5.1.49 pkg-config : 0.25 glib2 : 2.24.2 gtk2+ : 2.20.1 GMP : libgmp3-dev-2:4.3.2+dfsg-1.deb GNU gettext : 0.18.1 libcurl : 7.21.0 Qt : Not found MHD : 91101 gdb (started & attached to the transport-process) bt: (gdb) bt #0 0x00007f14bb9658b3 in select () from /lib/libc.so.6 #1 0x00007f14bc0b1160 in GNUNET_NETWORK_socket_select (rfds=0x1377880, wfds=0x1377910, efds=0x0, timeout=<value optimized out>) at network.c:1213 #2 0x00007f14bc0bd388 in GNUNET_SCHEDULER_run (task=<value optimized out>, task_cls=<value optimized out>) at scheduler.c:845 #3 0x00007f14bc0c5788 in GNUNET_SERVICE_run (argc=7, argv=<value optimized out>, serviceName=0x4102a4 "transport", opt=<value optimized out>, task=0x402ef0 <run>, task_cls=0x0) at service.c:1673 #4 0x0000000000402ed9 in main (argc=50, argv=0x1377888) at gnunet-service-transport.c:609 cont + Strg+C bt #0 0x00007f14bb9658b3 in select () from /lib/libc.so.6 #1 0x00007f14babea9bb in MHD_select (daemon=0x13b32d0, may_block=0) at daemon.c:1319 #2 0x00007f14babeacd7 in MHD_run (daemon=0x24) at daemon.c:1575 #3 0x00007f14b84be87c in server_v6_run (cls=0x13a47a0, tc=0x7fffb6a037b0) at plugin_transport_http_server.c:973 #4 0x00007f14bc0bcfa2 in run_ready (task=<value optimized out>, task_cls=<value optimized out>) at scheduler.c:684 #5 GNUNET_SCHEDULER_run (task=<value optimized out>, task_cls=<value optimized out>) at scheduler.c:874 #6 0x00007f14bc0c5788 in GNUNET_SERVICE_run (argc=7, argv=<value optimized out>, serviceName=0x4102a4 "transport", opt=<value optimized out>, task=0x402ef0 <run>, task_cls=0x0) at service.c:1673 #7 0x0000000000402ed9 in main (argc=36, argv=0x7fffb6a03630) at gnunet-service-transport.c:609 cont + Strg+C bt #0 0x00007f14bb9658b3 in select () from /lib/libc.so.6 #1 0x00007f14babea9bb in MHD_select (daemon=0x13a3490, may_block=0) at daemon.c:1319 #2 0x00007f14babeacd7 in MHD_run (daemon=0x20) at daemon.c:1575 #3 0x00007f14badfe63c in server_v4_run (cls=0x1372b20, tc=0x7fffb6a037b0) at plugin_transport_http_server.c:945 #4 0x00007f14bc0bcfa2 in run_ready (task=<value optimized out>, task_cls=<value optimized out>) at scheduler.c:684 #5 GNUNET_SCHEDULER_run (task=<value optimized out>, task_cls=<value optimized out>) at scheduler.c:874 #6 0x00007f14bc0c5788 in GNUNET_SERVICE_run (argc=7, argv=<value optimized out>, serviceName=0x4102a4 "transport", opt=<value optimized out>, task=0x402ef0 <run>, task_cls=0x0) at service.c:1673 #7 0x0000000000402ed9 in main (argc=32, argv=0x7fffb6a03630) at gnunet-service-transport.c:609 Hope that helps. |
|
Sadly, all this says is that this is not a known/fixed issue and that it is also not going to be an obvious one. We will have to find a way to reproduce it. |
|
Tried to track down the issue... not possible to reproduce atm Keep peer running over night to see if it occurs |
|
We just got a report (and bugfix) about a possible busy-loop in conjunction with external select (which is what we do in GNUnet with HTTP/HTTPS) and uninitialized memory (which must have, per chance, a particular value). So it seems likely that by fixing 0002085 we might have fixed this issue as well. amatus, can you update GNU libmicrohttpd to SVN HEAD and see if the issue is still there? |
|
Oh, sorry amatus, I didn't read that you were reporting an issue from someone else here. I guess in that case the best choice is likely to call this one resolved ("Update to MHD 0.9.18") and hope that if there is another issue, someone will again report it. |
|
Presumably fixed in MHD 0.9.18. SVN 19269 updates that MHD 0.9.18 is now required. |
Date Modified | Username | Field | Change |
---|---|---|---|
2011-12-20 22:55 | amatus | New Issue | |
2011-12-20 22:55 | amatus | Status | new => assigned |
2011-12-20 22:55 | amatus | Assigned To | => Matthias Wachs |
2011-12-20 23:49 | amatus | OS | => Debian |
2011-12-20 23:49 | amatus | OS Version | => squeeze |
2011-12-20 23:49 | amatus | Platform | => amd64 |
2011-12-21 10:44 | Christian Grothoff | Note Added: 0005157 | |
2011-12-21 10:44 | Christian Grothoff | Note Added: 0005158 | |
2011-12-21 18:05 | mifritscher | Note Added: 0005161 | |
2011-12-23 10:51 | Christian Grothoff | Note Added: 0005168 | |
2011-12-23 10:51 | Christian Grothoff | Priority | normal => urgent |
2011-12-23 10:51 | Christian Grothoff | Product Version | => 0.9.0 |
2011-12-23 10:52 | Christian Grothoff | Severity | minor => major |
2011-12-23 10:52 | Christian Grothoff | Category | transport service => HTTP transport |
2012-01-10 18:29 | Matthias Wachs | Note Added: 0005256 | |
2012-01-19 22:21 | Christian Grothoff | Note Added: 0005308 | |
2012-01-19 22:21 | Christian Grothoff | Relationship added | related to 0002085 |
2012-01-19 22:23 | Christian Grothoff | Note Added: 0005309 | |
2012-01-19 22:24 | Christian Grothoff | Note Added: 0005310 | |
2012-01-19 22:24 | Christian Grothoff | Status | assigned => resolved |
2012-01-19 22:24 | Christian Grothoff | Resolution | open => fixed |
2012-01-19 22:24 | Christian Grothoff | Assigned To | Matthias Wachs => Christian Grothoff |
2012-01-19 22:24 | Christian Grothoff | Fixed in Version | => 0.9.2 |
2012-01-19 22:24 | Christian Grothoff | Target Version | => 0.9.2 |
2012-02-28 11:05 | Christian Grothoff | Status | resolved => closed |
2024-05-03 14:01 | Christian Grothoff | Category | HTTP transport => transport service |