View Issue Details

IDProjectCategoryView StatusLast Update
0003373GNUnetcadet servicepublic2018-06-07 00:25
ReporterFlorian Dold Assigned ToBart Polot  
PriorityhighSeveritymajorReproducibilitysometimes
Status closedResolutionfixed 
Product VersionGit master 
Target Version0.11.0pre66Fixed in Version0.11.0pre66 
Summary0003373: segfault in mesh service
DescriptionSometimes happens when using the secretsharing profiler.
Additional InformationProgram terminated with signal 11, Segmentation fault.
#0 0x0000000000413362 in GMC_send_create (connection=0x1130ab0) at gnunet-service-mesh_connection.c:2972
2972 size += connection->path->length * sizeof (struct GNUNET_PeerIdentity);
(gdb) bt full
#0 0x0000000000413362 in GMC_send_create (connection=0x1130ab0) at gnunet-service-mesh_connection.c:2972
        state = <optimized out>
        size = 36
        __FUNCTION__ = "GMC_send_create"
#1 0x0000000000422bea in GMP_connect (peer=peer@entry=0x1114270) at gnunet-service-mesh_peer.c:1532
        s = <optimized out>
        t = <optimized out>
        c = <optimized out>
        rerun_search = 0
        __FUNCTION__ = "GMP_connect"
#2 0x0000000000419c9b in GMCH_handle_local_create (c=c@entry=0x1110780, msg=msg@entry=0x7fff206be628) at gnunet-service-mesh_channel.c:1856
        ch = <optimized out>
        t = 0x1126bb0
        peer = 0x1114270
        __FUNCTION__ = "GMCH_handle_local_create"
#3 0x000000000041c49b in handle_channel_create (cls=<optimized out>, client=0x1113170, message=0x7fff206be628)
    at gnunet-service-mesh_local.c:386
        __FUNCTION__ = "handle_channel_create"
#4 0x00007f8d8dc0a990 in GNUNET_SERVER_inject (server=server@entry=0x1115f50, sender=sender@entry=0x1113170,
    message=message@entry=0x7fff206be628) at server.c:985
        pos = 0x1117ab0
        mh = 0x630d18 <client_handlers+24>
        i = 1
        type = 273
        size = 48
        found = <optimized out>
        __FUNCTION__ = "GNUNET_SERVER_inject"
#5 0x00007f8d8dc0c499 in client_message_tokenizer_callback (cls=0x1115f50, client=0x1113170, message=0x7fff206be628) at server.c:1205
        server = 0x1115f50
        sender = 0x1113170
        ret = <optimized out>
        __FUNCTION__ = "client_message_tokenizer_callback"
#6 0x00007f8d8dc0d313 in GNUNET_SERVER_mst_receive (mst=0x111eba0, client_identity=client_identity@entry=0x1113170, buf=<optimized out>,
---Type <return> to continue, or q <return> to quit---
    buf@entry=0x7fff206be628 "", size=size@entry=33340, purge=purge@entry=0, one_shot=-1, one_shot@entry=1) at server_mst.c:262
        hdr = <optimized out>
        delta = <optimized out>
        want = 48
        ibuf = 0x1127db0 "\t"
        need_align = <optimized out>
        offset = <optimized out>
        ret = 1
        __FUNCTION__ = "GNUNET_SERVER_mst_receive"
#7 0x00007f8d8dc0cc14 in process_incoming (cls=0x1113170, buf=0x7fff206be628, available=33340, addr=0x111dc30, addrlen=2, errCode=0)
    at server.c:1136
        client = 0x1113170
        server = 0x1115f50
        end = <optimized out>
        now = <optimized out>
        ret = <optimized out>
        __FUNCTION__ = "process_incoming"
#8 0x00007f8d8dbe2ae0 in receive_ready (cls=0x11130a0, tc=<optimized out>) at connection.c:1072
        connection = 0x11130a0
        buffer = 0x7fff206be628 ""
        ret = 33340
        receiver = <optimized out>
        __FUNCTION__ = "receive_ready"
#9 0x00007f8d8dc090b2 in run_ready (ws=0x1115780, rs=0x11156f0) at scheduler.c:595
        p = GNUNET_SCHEDULER_PRIORITY_DEFAULT
        pos = 0x1112a90
        tc = {reason = (GNUNET_SCHEDULER_REASON_READ_READY | GNUNET_SCHEDULER_REASON_PREREQ_DONE), read_ready = 0x11156f0,
          write_ready = 0x1115780}
#10 GNUNET_SCHEDULER_run (task=task@entry=0x7f8d8dc0f8c0 <service_task>, task_cls=task_cls@entry=0x7fff206ce820) at scheduler.c:817
        rs = 0x11156f0
        ws = <optimized out>
        timeout = <optimized out>
        ret = <optimized out>
---Type <return> to continue, or q <return> to quit---
        shc_int = 0x1115830
        shc_term = 0x11158f0
        shc_quit = 0x1115a70
        shc_hup = 0x1115b30
        shc_pipe = 0x11159b0
        last_tr = 2167
        busy_wait_warning = 0
        pr = 0x1119110
        c = 0 '\000'
        __FUNCTION__ = "GNUNET_SCHEDULER_run"
#11 0x00007f8d8dc12b9a in GNUNET_SERVICE_run (argc=<optimized out>, argv=<optimized out>, service_name=service_name@entry=0x42b3d0 "mesh",
    options=options@entry=GNUNET_SERVICE_OPTION_NONE, task=task@entry=0x426390 <run>, task_cls=task_cls@entry=0x0) at service.c:1493
        err = 0
        ret = <optimized out>
        cfg_fn = 0x1110720 "~/.config/gnunet.conf"
        opt_cfg_fn = 0x1110870 "/tmp/testbed4Fy94x/0/config"
        loglev = 0x0
        logfile = 0x0
        do_daemonize = 0
        i = <optimized out>
        skew_offset = 0
        skew_variance = 0
        clock_offset = <optimized out>
        sctx = {cfg = 0x1110740, server = 0x1115f50, addrs = 0x0, service_name = 0x42b3d0 "mesh", task = 0x426390 <run>, task_cls = 0x0,
          v4_denied = 0x0, v6_denied = 0x0, v4_allowed = 0x1110800, v6_allowed = 0x1115690, my_handlers = 0x1118a10, addrlens = 0x0,
          lsocks = 0x1119020, shutdown_task = 4, timeout = {rel_value_us = 18446744073709551615}, ret = 1, ready_confirm_fd = -1,
          require_found = 1, match_uid = 1, match_gid = 1, options = GNUNET_SERVICE_OPTION_NONE}
        cfg = 0x1110740
        xdg = <optimized out>
        service_options = {{shortName = 99 'c', name = 0x7f8d8dc1d3a3 "config", argumentHelp = 0x7f8d8dc1d3aa "FILENAME",
            description = 0x7f8d8dc1d470 "use configuration file FILENAME", require_argument = 1,
            processor = 0x7f8d8dbf9610 <GNUNET_GETOPT_set_string>, scls = 0x7fff206ce770}, {shortName = 100 'd',
            name = 0x7f8d8dc1eb7b "daemonize", argumentHelp = 0x0, description = 0x7f8d8dc1eed8 "do daemonize (detach from terminal)",
---Type <return> to continue, or q <return> to quit---
            require_argument = 0, processor = 0x7f8d8dbf9600 <GNUNET_GETOPT_set_one>, scls = 0x7fff206ce764}, {shortName = 104 'h',
            name = 0x7f8d8dc1d3be "help", argumentHelp = 0x0, description = 0x7f8d8dc1d3b3 "print this help", require_argument = 0,
            processor = 0x7f8d8dbf9290 <GNUNET_GETOPT_format_help_>, scls = 0x0}, {shortName = 76 'L', name = 0x7f8d8dc1d3c3 "log",
            argumentHelp = 0x7f8d8dc1d3c7 "LOGLEVEL", description = 0x7f8d8dc1d490 "configure logging to use LOGLEVEL", require_argument = 1,
            processor = 0x7f8d8dbf9610 <GNUNET_GETOPT_set_string>, scls = 0x7fff206ce778}, {shortName = 108 'l',
            name = 0x7f8d8dc1d3d0 "logfile", argumentHelp = 0x7f8d8dc19a84 "LOGFILE",
            description = 0x7f8d8dc1d4b8 "configure logging to write logs to LOGFILE", require_argument = 1,
            processor = 0x7f8d8dbf9610 <GNUNET_GETOPT_set_string>, scls = 0x7fff206ce780}, {shortName = 118 'v',
            name = 0x7f8d8dc1d3d8 "version", argumentHelp = 0x0, description = 0x7f8d8dc1d3e0 "print the version number",
            require_argument = 0, processor = 0x7f8d8dbf9260 <GNUNET_GETOPT_print_version_>, scls = 0x7f8d8dc1d3f9}, {shortName = 0 '\000',
            name = 0x0, argumentHelp = 0x0, description = 0x0, require_argument = 0, processor = 0x0, scls = 0x0}}
        __FUNCTION__ = "GNUNET_SERVICE_run"
#12 0x00000000004034d0 in main (argc=<optimized out>, argv=<optimized out>) at gnunet-service-mesh.c:175
        ret = <optimized out>
        r = <optimized out>
TagsNo tags attached.

Relationships

related to 0003361 closedBart Polot Crash in mesh 

Activities

Bart Polot

2014-04-09 15:37

manager   ~0008222

Please disable gcc optimization, otherwise backtrace is much less useful. I personally just have a -O0 in my bashrc.

Florian Dold

2014-04-09 15:47

developer   ~0008223

Oh sure, sorry!

Here's the full backtrace with -O0

Core was generated by `/home/dold/lib//gnunet/libexec/gnunet-service-mesh -c /tmp/testbed0uytcr/0/conf'.
Program terminated with signal 11, Segmentation fault.
#0 0x0000000000415651 in GMC_send_create (connection=0x124fd60) at gnunet-service-mesh_connection.c:2972
2972 size += connection->path->length * sizeof (struct GNUNET_PeerIdentity);
(gdb) bt
#0 0x0000000000415651 in GMC_send_create (connection=0x124fd60) at gnunet-service-mesh_connection.c:2972
#1 0x000000000042627e in GMP_connect (peer=0x1232da0) at gnunet-service-mesh_peer.c:1532
#2 0x000000000041bae3 in GMCH_handle_local_create (c=0x122f780, msg=0x7fffaddcc028) at gnunet-service-mesh_channel.c:1856
#3 0x000000000041edaf in handle_channel_create (cls=0x0, client=0x1231ee0, message=0x7fffaddcc028) at gnunet-service-mesh_local.c:386
#4 0x00007fd14f0c9e13 in GNUNET_SERVER_inject (server=0x1234f50, sender=0x1231ee0, message=0x7fffaddcc028) at server.c:985
#5 0x00007fd14f0caa9a in client_message_tokenizer_callback (cls=0x1234f50, client=0x1231ee0, message=0x7fffaddcc028) at server.c:1205
#6 0x00007fd14f0cd1c6 in GNUNET_SERVER_mst_receive (mst=0x1241f80, client_identity=0x1231ee0, buf=0x7fffaddcc028 "", size=48, purge=0, one_shot=-1) at server_mst.c:262
#7 0x00007fd14f0ca697 in process_incoming (cls=0x1231ee0, buf=0x7fffaddcc028, available=48, addr=0x1231ea0, addrlen=2, errCode=0) at server.c:1136
#8 0x00007fd14f097d85 in receive_ready (cls=0x1235a30, tc=0x7fffadddc0d0) at connection.c:1072
#9 0x00007fd14f0c5d17 in run_ready (rs=0x12346f0, ws=0x1234780) at scheduler.c:595
#10 0x00007fd14f0c659f in GNUNET_SCHEDULER_run (task=0x7fd14f0d2a19 <service_task>, task_cls=0x7fffadddc360) at scheduler.c:817
#11 0x00007fd14f0d4801 in GNUNET_SERVICE_run (argc=3, argv=0x7fffadddc6d8, service_name=0x42fa21 "mesh", options=GNUNET_SERVICE_OPTION_NONE, task=0x42a47b <run>, task_cls=0x0) at service.c:1493
#12 0x000000000042a803 in main (argc=3, argv=0x7fffadddc6d8) at gnunet-service-mesh.c:175
(gdb) bt full
#0 0x0000000000415651 in GMC_send_create (connection=0x124fd60) at gnunet-service-mesh_connection.c:2972
        state = 233876922
        size = 36
        __FUNCTION__ = "GMC_send_create"
#1 0x000000000042627e in GMP_connect (peer=0x1232da0) at gnunet-service-mesh_peer.c:1532
        s = 0x1245c00 "# connections"
        t = 0x1245760
        p = 0x124fba0
        c = 0x124fd60
        rerun_search = 0
        __FUNCTION__ = "GMP_connect"
#2 0x000000000041bae3 in GMCH_handle_local_create (c=0x122f780, msg=0x7fffaddcc028) at gnunet-service-mesh_channel.c:1856
        ch = 0x421197 <GML_client_get+29>
        t = 0x1245760
        peer = 0x1232da0
        chid = 2147483653
        __FUNCTION__ = "GMCH_handle_local_create"
#3 0x000000000041edaf in handle_channel_create (cls=0x0, client=0x1231ee0, message=0x7fffaddcc028) at gnunet-service-mesh_local.c:386
        c = 0x122f780
        __FUNCTION__ = "handle_channel_create"
#4 0x00007fd14f0c9e13 in GNUNET_SERVER_inject (server=0x1234f50, sender=0x1231ee0, message=0x7fffaddcc028) at server.c:985
        pos = 0x1236ab0
        mh = 0x634bf8 <client_handlers+24>
        i = 1
        type = 273
        size = 48
        found = 0
        __FUNCTION__ = "GNUNET_SERVER_inject"
#5 0x00007fd14f0caa9a in client_message_tokenizer_callback (cls=0x1234f50, client=0x1231ee0, message=0x7fffaddcc028) at server.c:1205
        server = 0x1234f50
        sender = 0x1231ee0
        ret = 32721
        __FUNCTION__ = "client_message_tokenizer_callback"
#6 0x00007fd14f0cd1c6 in GNUNET_SERVER_mst_receive (mst=0x1241f80, client_identity=0x1231ee0, buf=0x7fffaddcc028 "", size=48, purge=0, one_shot=-1) at server_mst.c:262
        hdr = 0x7fffaddcc028
        delta = 19078880
        want = 48
        ibuf = 0x125f430 ""
        need_align = 0
        offset = 140736110313512
        ret = 1
        __FUNCTION__ = "GNUNET_SERVER_mst_receive"
#7 0x00007fd14f0ca697 in process_incoming (cls=0x1231ee0, buf=0x7fffaddcc028, available=48, addr=0x1231ea0, addrlen=2, errCode=0) at server.c:1136
        client = 0x1231ee0
        server = 0x1234f50
        end = {abs_value_us = 18446744073709551615}
        now = {abs_value_us = 1397051185439804}
        ret = 0
        __FUNCTION__ = "process_incoming"
#8 0x00007fd14f097d85 in receive_ready (cls=0x1235a30, tc=0x7fffadddc0d0) at connection.c:1072
        connection = 0x1235a30
        buffer = 0x7fffaddcc028 ""
        ret = 48
        receiver = 0x7fd14f0ca2a4 <process_incoming>
        __FUNCTION__ = "receive_ready"
---Type <return> to continue, or q <return> to quit---
#9 0x00007fd14f0c5d17 in run_ready (rs=0x12346f0, ws=0x1234780) at scheduler.c:595
        p = GNUNET_SCHEDULER_PRIORITY_DEFAULT
        pos = 0x1232fa0
        tc = {reason = (GNUNET_SCHEDULER_REASON_READ_READY | GNUNET_SCHEDULER_REASON_PREREQ_DONE), read_ready = 0x12346f0, write_ready = 0x1234780}
        __FUNCTION__ = "run_ready"
#10 0x00007fd14f0c659f in GNUNET_SCHEDULER_run (task=0x7fd14f0d2a19 <service_task>, task_cls=0x7fffadddc360) at scheduler.c:817
        rs = 0x12346f0
        ws = 0x1234780
        timeout = {rel_value_us = 1999530}
        ret = 4
        shc_int = 0x1234830
        shc_term = 0x12348f0
        shc_quit = 0x1234a70
        shc_hup = 0x1234b30
        shc_pipe = 0x12349b0
        last_tr = 1389
        busy_wait_warning = 0
        pr = 0x1238110
        c = 79 'O'
        __FUNCTION__ = "GNUNET_SCHEDULER_run"
#11 0x00007fd14f0d4801 in GNUNET_SERVICE_run (argc=3, argv=0x7fffadddc6d8, service_name=0x42fa21 "mesh", options=GNUNET_SERVICE_OPTION_NONE, task=0x42a47b <run>, task_cls=0x0) at service.c:1493
        err = 0
        ret = 3
        cfg_fn = 0x122f720 "~/.config/gnunet.conf"
        opt_cfg_fn = 0x122f870 "/tmp/testbed0uytcr/0/config"
        loglev = 0x0
        logfile = 0x0
        do_daemonize = 0
        i = 0
        skew_offset = 0
        skew_variance = 0
        clock_offset = 0
        sctx = {cfg = 0x122f740, server = 0x1234f50, addrs = 0x0, service_name = 0x42fa21 "mesh", task = 0x42a47b <run>, task_cls = 0x0, v4_denied = 0x0, v6_denied = 0x0, v4_allowed = 0x122f800,
          v6_allowed = 0x1234690, my_handlers = 0x1237a10, addrlens = 0x0, lsocks = 0x1238020, shutdown_task = 4, timeout = {rel_value_us = 18446744073709551615}, ret = 1, ready_confirm_fd = -1,
          require_found = 1, match_uid = 1, match_gid = 1, options = GNUNET_SERVICE_OPTION_NONE}
        cfg = 0x122f740
        xdg = 0x0
        service_options = {{shortName = 99 'c', name = 0x7fd14f0e248d "config", argumentHelp = 0x7fd14f0e2494 "FILENAME", description = 0x7fd14f0e24a0 "use configuration file FILENAME", require_argument = 1,
            processor = 0x7fd14f0b3443 <GNUNET_GETOPT_set_string>, scls = 0x7fffadddc248}, {shortName = 100 'd', name = 0x7fd14f0e24c0 "daemonize", argumentHelp = 0x0,
            description = 0x7fd14f0e24d0 "do daemonize (detach from terminal)", require_argument = 0, processor = 0x7fd14f0b3416 <GNUNET_GETOPT_set_one>, scls = 0x7fffadddc208}, {shortName = 104 'h',
            name = 0x7fd14f0e24f4 "help", argumentHelp = 0x0, description = 0x7fd14f0e24f9 "print this help", require_argument = 0, processor = 0x7fd14f0b2edd <GNUNET_GETOPT_format_help_>, scls = 0x0}, {
            shortName = 76 'L', name = 0x7fd14f0e2509 "log", argumentHelp = 0x7fd14f0e250d "LOGLEVEL", description = 0x7fd14f0e2518 "configure logging to use LOGLEVEL", require_argument = 1,
            processor = 0x7fd14f0b3443 <GNUNET_GETOPT_set_string>, scls = 0x7fffadddc250}, {shortName = 108 'l', name = 0x7fd14f0e253a "logfile", argumentHelp = 0x7fd14f0e2542 "LOGFILE",
            description = 0x7fd14f0e2550 "configure logging to write logs to LOGFILE", require_argument = 1, processor = 0x7fd14f0b3443 <GNUNET_GETOPT_set_string>, scls = 0x7fffadddc258}, {shortName = 118 'v',
            name = 0x7fd14f0e257b "version", argumentHelp = 0x0, description = 0x7fd14f0e2583 "print the version number", require_argument = 0, processor = 0x7fd14f0b2e97 <GNUNET_GETOPT_print_version_>,
            scls = 0x7fd14f0e259c}, {shortName = 0 '\000', name = 0x0, argumentHelp = 0x0, description = 0x0, require_argument = 0, processor = 0x0, scls = 0x0}}
        __FUNCTION__ = "GNUNET_SERVICE_run"
#12 0x000000000042a803 in main (argc=3, argv=0x7fffadddc6d8) at gnunet-service-mesh.c:175
        ret = 0
        r = 0

Bart Polot

2014-04-10 03:08

manager   ~0008226

BTW, trying to reproduce this crashes both secretsharing service AND profiler. Is this known to you? Want a coredump?

Florian Dold

2014-04-10 11:24

developer   ~0008229

I can't reproduce the crash in secretsharing(-profiler). A coredump / backtrace would be very helpful.

Bart Polot

2014-04-10 11:25

manager   ~0008230

Ok, I'll file a separate bug

Bart Polot

2014-04-10 17:40

manager   ~0008232

Fixed in r33030.

Issue History

Date Modified Username Field Change
2014-04-09 15:27 Florian Dold New Issue
2014-04-09 15:27 Florian Dold Status new => assigned
2014-04-09 15:27 Florian Dold Assigned To => Bart Polot
2014-04-09 15:34 Bart Polot Relationship added related to 0003361
2014-04-09 15:34 Bart Polot Status assigned => acknowledged
2014-04-09 15:37 Bart Polot Note Added: 0008222
2014-04-09 15:47 Florian Dold Note Added: 0008223
2014-04-10 03:08 Bart Polot Note Added: 0008226
2014-04-10 11:24 Florian Dold Note Added: 0008229
2014-04-10 11:25 Bart Polot Note Added: 0008230
2014-04-10 17:40 Bart Polot Note Added: 0008232
2014-04-10 17:40 Bart Polot Status acknowledged => resolved
2014-04-10 17:40 Bart Polot Fixed in Version => Git master
2014-04-10 17:40 Bart Polot Resolution open => fixed
2014-04-10 19:10 Christian Grothoff Product Version => Git master
2014-04-10 19:10 Christian Grothoff Fixed in Version Git master => 0.11.0pre66
2014-04-10 19:10 Christian Grothoff Target Version => 0.11.0pre66
2014-05-09 18:34 Christian Grothoff Category mesh service => cadet service
2018-06-07 00:25 Christian Grothoff Status resolved => closed