03/07/2014
What was said in freenode #gtk-gnutella on 03/08/2014:
- 03:45:56
ArneBab
joined the channel
- 03:49:04
ArneBab_
left the channel
- 04:37:41
Ci-Dev
joined the channel
- 04:40:44
Ci-Dev_
left the channel
- 06:43:49
mrjoe[w]
joined the channel
- 08:30:05
ram:
mrjoe[w]: speaking of tests, is the thread-test program in src/lib now reporting the right thing on OS/X for "./thread-test -O"?
- 08:30:39
ram:
The expected behaviour is that it will emit the following CRITICAL message:
- 08:30:41
ram:
stack (32768 bytes) overflowing for thread #3:overflow_thread(0)
- 08:31:15
ram:
then it will abort of course, but that's all the point of having a signal stack... to be able to detect and report stack overflows for threads
- 08:31:35
mrjoe[w]:
$ ./thread-test -O
- 08:31:35
mrjoe[w]:
Bus error: 10
- 08:56:05
r00t-
got netsplit
- 00:00:00
--- ---
- 10:41:26
ram:
mrjoe[w]: which is not exactly what we expect
- 10:42:18
ram:
You see why we need a "test driver" to capture the output of the test programs and determine whether the test is "working" or not
- 12:20:25
mrjoe[w]
left the channel
- 12:36:39
GitHub114
joined the channel
- 12:36:39
GitHub114 -
[gtk-gnutella] rmanfredi pushed 4 new commits to devel: https://github.com/gtk-gnutella/gtk-gnutella/compare/50849e240811...7015086ccb13
- 12:36:39
GitHub114 -
gtk-gnutella/devel c743dd3 Raphael Manfredi: Don't answer to OOB queries coming from nodes we want to avoid contact with.
- 12:36:39
GitHub114 -
gtk-gnutella/devel 9193ef3 Raphael Manfredi: Added explicit drop reason for shunned IP addresses.
- 12:36:39
GitHub114 -
gtk-gnutella/devel e68f2b3 Raphael Manfredi: Refuse incoming TCP connections from shunned IP addresses.
- 12:36:39
GitHub114
left the channel
- 12:39:09
GitHub112
joined the channel
- 12:39:09
GitHub112 -
[gtk-gnutella] rmanfredi pushed 1 new commit to devel: https://github.com/gtk-gnutella/gtk-gnutella/commit/eac88cef0f4a9744509c60d06faf8303a8c2f7ac
- 12:39:09
GitHub112 -
gtk-gnutella/devel eac88ce Raphael Manfredi: Removed redundant buf_size() declaration.
- 12:39:09
GitHub112
left the channel
- 12:44:21
GitHub97
joined the channel
- 12:44:21
GitHub97 -
[gtk-gnutella] rmanfredi pushed 2 new commits to devel: https://github.com/gtk-gnutella/gtk-gnutella/compare/eac88cef0f4a...0710fd332f3e
- 12:44:21
GitHub97 -
gtk-gnutella/devel a5d1d7b Raphael Manfredi: Removed redundant buf_data() declaration.
- 12:44:21
GitHub97 -
gtk-gnutella/devel 0710fd3 Raphael Manfredi: Removed redundant const declarations.
- 12:44:21
GitHub97
left the channel
- 12:59:26
GitHub15
joined the channel
- 12:59:26
GitHub15 -
[gtk-gnutella] rmanfredi pushed 3 new commits to devel: https://github.com/gtk-gnutella/gtk-gnutella/compare/0710fd332f3e...72711f5ac091
- 12:59:26
GitHub15 -
gtk-gnutella/devel e587649 Raphael Manfredi: ascii_enforce(): removed useless expression in for() loop.
- 12:59:26
GitHub15 -
gtk-gnutella/devel 133773a Raphael Manfredi: get_results_set(): added const qualifications.
- 12:59:26
GitHub15 -
gtk-gnutella/devel 72711f5 Raphael Manfredi: Fixed compiler warnings.
- 12:59:26
GitHub15
left the channel
- 13:14:26
mrjoe[w]
joined the channel
- 13:15:33
mrjoe[w]:
Do you have a (ready) list of all available tests at the moment?
- 13:17:55
ram:
No, I'd need to compile a list of tests + expected behaviours -- that's not immediate
- 13:23:47
GitHub65
joined the channel
- 13:23:47
GitHub65 -
[gtk-gnutella] rmanfredi pushed 1 new commit to devel: https://github.com/gtk-gnutella/gtk-gnutella/commit/615694543d9a2b0b7d4fccdad26ea6796ae86f02
- 13:23:47
GitHub65 -
gtk-gnutella/devel 6156945 Raphael Manfredi: Don't log additional hostile flags if no new flags are being added to the list.
- 13:23:47
GitHub65
left the channel
- 14:07:25
mrjoe[w]:
Fatal error at qid = thread_quasi_id_fast(&qid);
- 14:07:29
mrjoe[w]:
qid is null?
- 14:08:03
ram:
what's the error?
- 14:08:17
mrjoe[w]:
14-03-08 15:03:39.264 (WARNING): socket_udp_event(): ignoring empty datagram from 66.169.179.45:6346
- 14:08:17
mrjoe[w]:
Process 15417 stopped
- 14:08:17
mrjoe[w]:
* thread #1: tid = 0x5ee4f1, 0x00000001002c54fe gtk-gnutella`thread_get_element + 46 at thread.c:2445, queue = 'com.apple.main-thread, stop reason = EXC_BAD_ACCESS (code=2, address=0x7fff5f3ffff0)
- 14:08:17
mrjoe[w]:
frame #0: 0x00000001002c54fe gtk-gnutella`thread_get_element + 46 at thread.c:2445
- 14:09:25
ram:
Bad access?
- 14:09:38
ram:
stack overflow?
- 14:09:43
ram:
the variable is on the stack
- 14:10:10
ram:
what's underneath the frame 0?
- 14:10:29
mrjoe[w]:
Debugger actually hang, so I had to restart, couldn't execute a bt
- 14:19:13
mrjoe[w]:
OK, another EXC_BAD_ACCESS
- 14:19:24
mrjoe[w]:
this time in memusage.c:787
- 14:19:48
mrjoe[w]:
I don't understand why I cant execute a bt
- 14:20:13
mrjoe[w]:
Euh ok, stackoverflow I guess
- 14:20:27
mrjoe[w]:
frame #261997: 0x000000010029eae9 gtk-gnutella`pmsg_free(mb=0x000000010511ba40) + 137 at pmsg.c:448
- 14:20:27
mrjoe[w]:
frame #261998: 0x000000010029eae9 gtk-gnutella`pmsg_free(mb=0x0000000105118ac0) + 137 at pmsg.c:448
- 14:20:27
mrjoe[w]:
frame #261999: 0x000000010013adde gtk-gnutella`ut_got_message [inlined] ut_acknowledge_fragment + 2526 at rx_ut.c:1042
- 14:20:56
mrjoe[w]:
frame #0: 0x000000010028c01b gtk-gnutella`memusage_add(mu=0x0000000101ef4ca0, size=32) + 75 at memusage.c:787
- 14:20:56
mrjoe[w]:
frame #1: 0x00000001002f1baa gtk-gnutella`xallocate(size=<unavailable>, can_vmm=1) + 1034 at xmalloc.c:4422
- 14:20:56
mrjoe[w]:
frame #2: 0x00000001003003c6 gtk-gnutella`zn_extend(zone=0x0000000101e4a180) + 54 at zalloc.c:1480
- 14:21:03
mrjoe[w]:
frame #3: 0x00000001002fffd5 gtk-gnutella`zalloc(zone=0x0000000101e4a180) + 229 at zalloc.c:821
- 14:21:03
mrjoe[w]:
frame #4: 0x000000010029e4bc gtk-gnutella`pmsg_clone_extend(mb=0x000000010fa6dfc0, free_cb=0x00000001001708b0, arg=0x0000000104b564e0) + 92 at pmsg.c:230
- 14:21:03
mrjoe[w]:
frame #5: 0x0000000100170b97 gtk-gnutella`ut_ack_pmsg_free(mb=0x000000010fa6dfc0, arg=0x0000000104b564e0) + 743 at tx_ut.c:1164
- 14:21:03
mrjoe[w]:
frame #6: 0x000000010029eae9 gtk-gnutella`pmsg_free(mb=0x000000010fa6dfc0) + 137 at pmsg.c:448
- 14:21:03
mrjoe[w]:
frame #7: 0x000000010029eae9 gtk-gnutella`pmsg_free(mb=0x000000010fa6df80) + 137 at pmsg.c:448
- 14:21:04
mrjoe[w]:
frame #8: 0x000000010029eae9 gtk-gnutella`pmsg_free(mb=0x000000010fa6df40) + 137 at pmsg.c:448
- 14:23:12
ram:
this looks like the main thread
- 14:23:25
ram:
the main thread should get enough stack from the OS
- 14:23:53
ram:
stack overflow means endless / uncontrolled recursion only. Which is weird in that kind of code
- 14:26:46
mrjoe[w]:
The stack size is 262014 calls deep
- 14:26:52
mrjoe[w]:
Seems like a lot to me
- 14:27:47
ram:
either endless recursion somewhere or... messed up and the debugger cannot unwind it
- 14:28:08
ram:
is there a place where it starts to recurse?
- 14:28:19
mrjoe[w]:
Yes, at frame #261999: 0x000000010013adde gtk-gnutella`ut_got_message [inlined] ut_acknowledge_fragment + 2526 at rx_ut.c:1042
- 14:28:27
ram:
These consecutive pmsg_free() calls look weird to me
- 14:29:23
ram:
and ut_acknowledge_fragment calls with routine in the stack?
- 14:29:44
ram:
It should call ut_ack_sendback() if the location is correct
- 14:30:41
mrjoe[w]:
This is the stack until pmsg_free:
- 14:30:42
mrjoe[w]:
frame #261998: 0x000000010029eae9 gtk-gnutella`pmsg_free(mb=0x0000000105118ac0) + 137 at pmsg.c:448
- 14:30:42
mrjoe[w]:
frame #261999: 0x000000010013adde gtk-gnutella`ut_got_message [inlined] ut_acknowledge_fragment + 2526 at rx_ut.c:1042
- 14:30:42
mrjoe[w]:
frame #262000: 0x000000010013ad08 gtk-gnutella`ut_got_message(rx=<unavailable>, data=<unavailable>, len=<unavailable>, from=0x00007fff00000000) + 2312 at rx_ut.c:1379
- 14:30:42
mrjoe[w]:
frame #262001: 0x0000000100174e0a gtk-gnutella`udp_received(s=0x0000000101eb5200, data=<unavailable>, len=<unavailable>, truncated=0) + 2842 at udp.c:1009
- 14:32:04
ram
needs to think
- 14:56:02
ram:
hah, I think I understand.
- 14:56:31
ram:
Looks like the same "retry loop" scheme that we found yesterday with TLS connections
- 15:04:19
ram:
mrjoe[w]: where you shutdowning the node?
- 15:04:39
ram:
or it was running and suddenly boom?
- 15:20:02
mrjoe[w]:
No I was not shutting down
- 15:20:19
mrjoe[w]:
It was just in the middle of doing 'nothing'
- 15:22:25
mrjoe[w]
bbl
- 15:33:36
ram:
.me fixing
- 15:45:22
GitHub35
joined the channel
- 15:45:22
GitHub35 -
[gtk-gnutella] rmanfredi pushed 1 new commit to devel: https://github.com/gtk-gnutella/gtk-gnutella/commit/8a844e2f8d508a7493956ade2f4d3f7316231d20
- 15:45:22
GitHub35 -
gtk-gnutella/devel 8a844e2 Raphael Manfredi: ut_ack_pmsg_free(): avoid endless loops if ACK message is dropped whilst unsent....
- 15:45:22
GitHub35
left the channel
- 15:45:32
ram:
mrjoe[w]: fix pused, normally this should solve the problem if my analysis was correct
- 15:50:22
ram
BBL
- 17:24:58
gorbushina
left the channel
- 18:23:20
mrjoe[w]
left the channel
- 20:38:56
mrjoe[w]
joined the channel
- 21:09:42
vvvanin
joined the channel
- 21:15:17
vvvanin
left the channel
- 22:00:39
oldcars
joined the channel
- 22:08:49
GitHub15
joined the channel
- 22:08:49
GitHub15 -
[gtk-gnutella] rmanfredi pushed 1 new commit to devel: https://github.com/gtk-gnutella/gtk-gnutella/commit/c31261ad98d9494949ebae9c409de9698cd3e8b3
- 22:08:49
GitHub15 -
gtk-gnutella/devel c31261a Raphael Manfredi: When targeted OOB-proxied query MUID conflicts, ensure leaf MUIDs are identical....
- 22:08:49
GitHub15
left the channel
- 22:12:57
GitHub66
joined the channel
- 22:12:57
GitHub66 -
[gtk-gnutella] rmanfredi pushed 1 new commit to devel: https://github.com/gtk-gnutella/gtk-gnutella/commit/ada95b11a513477837c56f893b3fbe3ee727856f
- 22:12:57
GitHub66 -
gtk-gnutella/devel ada95b1 Raphael Manfredi: Raised "oob_proxy_debug" value for debugging messages.
- 22:12:57
GitHub66
left the channel
- 00:00:00
--- ---