View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0003373 | GNUnet | cadet service | public | 2014-04-09 15:27 | 2018-06-07 00:25 |
Reporter | Florian Dold | Assigned To | Bart Polot | ||
Priority | high | Severity | major | Reproducibility | sometimes |
Status | closed | Resolution | fixed | ||
Product Version | Git master | ||||
Target Version | 0.11.0pre66 | Fixed in Version | 0.11.0pre66 | ||
Summary | 0003373: segfault in mesh service | ||||
Description | Sometimes happens when using the secretsharing profiler. | ||||
Additional Information | Program 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> | ||||
Tags | No tags attached. | ||||
related to | 0003361 | closed | Bart Polot | Crash in mesh |
|
Please disable gcc optimization, otherwise backtrace is much less useful. I personally just have a -O0 in my bashrc. |
|
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 |
|
BTW, trying to reproduce this crashes both secretsharing service AND profiler. Is this known to you? Want a coredump? |
|
I can't reproduce the crash in secretsharing(-profiler). A coredump / backtrace would be very helpful. |
|
Ok, I'll file a separate bug |
|
Fixed in r33030. |
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 |