View Issue Details

IDProjectCategoryView StatusLast Update
0003184GNUnetset servicepublic2013-12-24 20:53
ReporterChristian Grothoff Assigned ToFlorian Dold  
PriorityurgentSeveritycrashReproducibilityhave not tried
Status closedResolutionfixed 
Product VersionGit master 
Target Version0.10.0Fixed in Version0.10.0 
Summary0003184: crash in gnunet-service-set:1239
DescriptionLooks like we attempt to insert 'incoming' to a DLL that it is already in, but this is very strange:

(gdb) ba
#0 0x00007f4a8818c1d5 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
#1 0x00007f4a8818f388 in __GI_abort () at abort.c:90
#2 0x00007f4a88e2841c in GNUNET_abort () at common_logging.c:289
#3 0x0000000000405af0 in channel_new_cb (cls=0x0, channel=0x24e3b20, initiator=0x7fffa9894c28, port=19,
    options=GNUNET_MESH_OPTION_RELIABLE) at gnunet-service-set.c:1239
#4 0x00007f4a88a05ce3 in process_channel_created (h=0x24bebe0, msg=0x7fffa9894c20) at mesh_api.c:770
#5 0x00007f4a88a060e9 in msg_received (cls=0x24bebe0, msg=0x7fffa9894c20) at mesh_api.c:1030
#6 0x00007f4a88e255cf in receive_task (cls=0x24bee50, tc=0x7fffa9894d00) at client.c:589
#7 0x00007f4a88e5b4c2 in run_ready (rs=0x24be300, ws=0x24be390) at scheduler.c:595
#8 0x00007f4a88e5bcd3 in GNUNET_SCHEDULER_run (task=0x7f4a88e66ac4 <service_task>, task_cls=0x7fffa98950a0) at scheduler.c:817
#9 0x00007f4a88e685e5 in GNUNET_SERVICE_run (argc=3, argv=0x7fffa9895328, service_name=0x40bda3 "set",
    options=GNUNET_SERVICE_OPTION_NONE, task=0x405cdb <run>, task_cls=0x0) at service.c:1478
#10 0x0000000000405e2d in main (argc=3, argv=0x7fffa9895328) at gnunet-service-set.c:1402


(gdb) down
#3 0x0000000000405af0 in channel_new_cb (cls=0x0, channel=0x24e3b20, initiator=0x7fffa9894c28, port=19,
    options=GNUNET_MESH_OPTION_RELIABLE) at gnunet-service-set.c:1239
(gdb) print incoming
$1 = (struct Operation *) 0x24e3ad0
(gdb) print incoming_head
$2 = (struct Operation *) 0x24e3ad0
Steps To Reproduce ../testbed/gnunet-testbed-profiler -c test_transport_dv_data.conf -p 10 -e 100
TagsNo tags attached.

Activities

Christian Grothoff

2013-12-09 23:08

manager   ~0007807

My best guess is that we deleted an old Operation but failed to remove it from the list; allocated a fresh one, and happened to get the same address from malloc by chance. Then the DLL check might fail.

Florian Dold

2013-12-10 00:25

developer   ~0007810

Should be fixed in r3124. Was caused by a bug when rejecting set operations.

Issue History

Date Modified Username Field Change
2013-12-09 23:05 Christian Grothoff New Issue
2013-12-09 23:05 Christian Grothoff Status new => assigned
2013-12-09 23:05 Christian Grothoff Assigned To => Florian Dold
2013-12-09 23:08 Christian Grothoff Note Added: 0007807
2013-12-10 00:25 Florian Dold Note Added: 0007810
2013-12-10 00:25 Florian Dold Status assigned => resolved
2013-12-10 00:25 Florian Dold Resolution open => fixed
2013-12-12 00:26 Christian Grothoff Fixed in Version => 0.10.0
2013-12-12 00:26 Christian Grothoff Target Version 0.10.1 => 0.10.0
2013-12-24 20:53 Christian Grothoff Status resolved => closed