View Issue Details

IDProjectCategoryView StatusLast Update
0003299GNUnettransport servicepublic2014-04-08 16:41
ReporterLRN Assigned ToMatthias Wachs  
PrioritynormalSeveritycrashReproducibilityalways
Status closedResolutionfixed 
Product VersionGit master 
Target Version0.10.1Fixed in Version0.10.1 
Summary0003299: Crash in transport service, multiple times
Descriptionr32150
Additional Information
Reading symbols from d:\progs\gnunet\lib\gnunet\libexec\gnunet-service-transport.exe...done.
Continuing.

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 12988.0x24a8]
0x01008fda in GNUNET_CONTAINER_multipeermap_iterate (map=0x945f540, it=0x410364 <find_notification_request>, it_cls=0x28f998) at container_multipeermap.c:331
331         me = map->map[i];
(gdb) bt
#0  0x01008fda in GNUNET_CONTAINER_multipeermap_iterate (map=0x945f540, it=0x410364 <find_notification_request>, it_cls=0x28f998) at container_multipeermap.c:331
#1  0x0041069f in GST_neighbours_unregister_quota_notification (cls=0x9461910, peer=0x9476cf8, plugin=0xa86e0ec "tcp", session=0x9476cf8) at gnunet-service-transport_neighbours.c:1773
#2  0x0a86275a in tcp_disconnect_session (cls=0x9468d10, session=0x9476cf8) at plugin_transport_tcp.c:782
#3  0x0a866751 in session_disconnect_it (cls=0x9468d10, key=0x9476cf8, value=0x9476cf8) at plugin_transport_tcp.c:1572
#4  0x0100901e in GNUNET_CONTAINER_multipeermap_iterate (map=0x945f6e0, it=0xa8666fa <session_disconnect_it>, it_cls=0x9468d10) at container_multipeermap.c:343
#5  0x0a86aab8 in libgnunet_plugin_transport_tcp_done (cls=0x9455688) at plugin_transport_tcp.c:2577
#6  0x0102b748 in GNUNET_PLUGIN_unload (library_name=0x94662c8 "libgnunet_plugin_transport_tcp", arg=0x9455688) at plugin.c:276
#7  0x0041a503 in GST_plugins_unload () at gnunet-service-transport_plugins.c:285
#8  0x00403f08 in shutdown_task (cls=0x0, tc=0x28fbf0) at gnunet-service-transport.c:810
#9  0x01030a09 in run_ready (rs=0x945f8c8, ws=0x94608e0) at scheduler.c:595
#10 0x01031285 in GNUNET_SCHEDULER_run (task=0x103ce78 <service_task>, task_cls=0x28fda0) at scheduler.c:817
#11 0x0103de9f in GNUNET_SERVICE_run (argc=3, argv=0x9448d80, service_name=0x4255d8 <_Jv_RegisterClasses+4347352> "transport", options=GNUNET_SERVICE_OPTION_NONE, task=0x403fb7 <run>, task_cls=0x0) at service.c:1490
#12 0x00404772 in main (argc=3, argv=0x9448d80) at gnunet-service-transport.c:963
(gdb) p/x *map
$1 = {map = 0xdf00076, size = 0xdf0adba, map_length = 0xdf0adba, use_small_entries = 0xdf0adba, modification_counter = 0xdf0adba}


This was seen in at least the following tests (number in parentheses is the number of transport services that crashed during the test):
test_transport_api_multi.exe
test_core_quota_compliance_symmetric.exe
perf_ats_proportional_transport_none.exe (2)
perf_ats_proportional_core_none.exe (3)
perf_ats_proportional_transport_bandwidth.exe (3)
perf_ats_proportional_core_bandwidth.exe (2)
perf_ats_proportional_transport_latency.exe (2)
perf_ats_proportional_core_latency.exe (2)
perf_ats_ril_core_none.exe
perf_ats_ril_core_bandwidth.exe (2)
perf_ats_ril_transport_latency.exe (3)
test_dht_2dtorus.exe (11)
test_revocation.exe (2)
test_integration_bootstrap_and_connect.py
test_integration_disconnect.py
TagsNo tags attached.

Activities

Matthias Wachs

2014-02-04 13:29

manager   ~0008061

This is caused by start/stop order:

During shutdown:
  GST_neighbours_stop ();
  GST_validation_stop ();
  GST_plugins_unload ();

So the map is already freed during plugin unload ...
Patch is wip...

Matthias Wachs

2014-02-04 13:31

manager   ~0008062

Fixed in rev 32189.

Issue History

Date Modified Username Field Change
2014-02-02 18:58 LRN New Issue
2014-02-02 18:58 LRN Status new => assigned
2014-02-02 18:58 LRN Assigned To => Matthias Wachs
2014-02-04 13:29 Matthias Wachs Note Added: 0008061
2014-02-04 13:31 Matthias Wachs Note Added: 0008062
2014-02-04 13:32 Matthias Wachs Status assigned => resolved
2014-02-04 13:32 Matthias Wachs Resolution open => fixed
2014-04-08 16:40 Christian Grothoff Product Version => Git master
2014-04-08 16:40 Christian Grothoff Fixed in Version => 0.10.1
2014-04-08 16:40 Christian Grothoff Target Version => 0.10.1
2014-04-08 16:41 Christian Grothoff Status resolved => closed