View Issue Details

IDProjectCategoryView StatusLast Update
0002356GNUnettransport servicepublic2012-06-02 19:15
ReporterMatthias Wachs Assigned ToMatthias Wachs  
PrioritynormalSeverityminorReproducibilityhave not tried
Status closedResolutionfixed 
Product VersionGit master 
Target Version0.9.3Fixed in Version0.9.3 
Summary0002356: Assertion in gnunet-service-transport_neighbours.c:2627
Description#0 0x00007fbc5dc87d05 in raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#1 0x00007fbc5dc8bab6 in abort () at abort.c:92
#2 0x00007fbc5e486417 in GNUNET_abort () at common_logging.c:273
#3 0x0000000000411ec1 in GST_neighbours_session_terminated (peer=0x6c4060, session=0x6c3f20) at gnunet-service-transport_neighbours.c:2627
#4 0x0000000000403d4d in plugin_env_session_end (cls=0x6b2840, peer=0x6c4060, session=0x6c3f20) at gnunet-service-transport.c:360
#5 0x00007fbc5c8752dd in disconnect_session (session=0x6c3f20) at plugin_transport_tcp.c:944
#6 0x00007fbc5c877619 in session_disconnect_it (cls=0x6b5750, key=0x6f6cc8, value=0x6c3f20) at plugin_transport_tcp.c:1374
#7 0x00007fbc5e4958ba in GNUNET_CONTAINER_multihashmap_get_multiple (map=0x6b57d0, key=0x6f6cc8, it=0x7fbc5c8775c6 <session_disconnect_it>,
    it_cls=0x6b5750) at container_multihashmap.c:485
#8 0x00007fbc5c8776f9 in tcp_plugin_disconnect (cls=0x6b5750, target=0x6f6cc8) at plugin_transport_tcp.c:1403
#9 0x000000000040b7df in free_neighbour (n=0x6f6c60) at gnunet-service-transport_neighbours.c:830
#10 0x0000000000410ca6 in master_task (cls=0x6f6c60, tc=0x7fffe0c3d7e0) at gnunet-service-transport_neighbours.c:2341
#11 0x00007fbc5e4b4f8d in run_ready (rs=0x6bf7b0, ws=0x6bf840) at scheduler.c:602
#12 0x00007fbc5e4b5796 in GNUNET_SCHEDULER_run (task=0x7fbc5e4c2528 <service_task>, task_cls=0x7fffe0c3dac0) at scheduler.c:790
#13 0x00007fbc5e4c3fc0 in GNUNET_SERVICE_run (argc=3, argv=0x7fffe0c3dd18, service_name=0x416c57 "transport", options=GNUNET_SERVICE_OPTION_NONE,
    task=0x4044ac <run>, task_cls=0x0) at service.c:1773
#14 0x0000000000404a79 in main (argc=3, argv=0x7fffe0c3dd18) at gnunet-service-transport.c:646
(gdb) quit
Additional InformationIn master task:
  case S_DISCONNECT:
    GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
        "Cleaning up connection to `%s' after sending DISCONNECT\n",
        GNUNET_i2s (&n->id));
    n->state = S_DISCONNECT_FINISHED;
    free_neighbour (n);
    return;

Issue:

-> free_neighbour (n)
-> papi->disconnect
-> GST_neighbours_session_terminated:
  case S_DISCONNECT_FINISHED:
    GNUNET_assert (0);
    break;
TagsNo tags attached.

Activities

Matthias Wachs

2012-05-15 11:55

reporter   ~0005896

My solution:

remove: n->state = S_DISCONNECT_FINISHED;

This will change order to:
free_neighbour (n)
{
papi->disconnect -> GST_neighbours_session_terminated
n->state = S_DISCONNECT_FINISHED;
}

Matthias Wachs

2012-05-15 12:00

reporter   ~0005897

Last edited: 2012-05-15 13:32

implemented in 21492
improved fix in 21494.

Issue History

Date Modified Username Field Change
2012-05-15 11:52 Matthias Wachs New Issue
2012-05-15 11:52 Matthias Wachs Status new => assigned
2012-05-15 11:52 Matthias Wachs Assigned To => Matthias Wachs
2012-05-15 11:55 Matthias Wachs Note Added: 0005896
2012-05-15 11:56 Matthias Wachs Summary gnunet-service-transport_neighbours.c:2627 => Assertion in gnunet-service-transport_neighbours.c:2627
2012-05-15 12:00 Matthias Wachs Note Added: 0005897
2012-05-15 12:01 Matthias Wachs Status assigned => resolved
2012-05-15 12:01 Matthias Wachs Resolution open => fixed
2012-05-15 13:32 Matthias Wachs Note Edited: 0005897
2012-05-15 14:58 Christian Grothoff Fixed in Version => 0.9.3
2012-05-15 14:58 Christian Grothoff Target Version => 0.9.3
2012-06-02 19:15 Christian Grothoff Status resolved => closed