View Issue Details

IDProjectCategoryView StatusLast Update
0004666GNUnetcore servicepublic2018-06-07 00:24
ReporterBart Polot Assigned ToChristian Grothoff  
PrioritynormalSeveritycrashReproducibilitysometimes
Status closedResolutionfixed 
Product VersionGit master 
Target Version0.11.0pre66Fixed in Version0.11.0pre66 
Summary0004666: CORE abort() during CADET testcase run
DescriptionCore was generated by `/tmp/gnunet/lib//gnunet/libexec/gnunet-service-core -c /tmp/bart/testbedGIOsC1/'.
Program terminated with signal SIGABRT, Aborted.
#0 0x00007f61a451e04f in raise () from /usr/lib/libc.so.6
(gdb) bt
#0 0x00007f61a451e04f in raise () from /usr/lib/libc.so.6
#1 0x00007f61a451f47a in abort () from /usr/lib/libc.so.6
#2 0x00007f61a585b799 in GNUNET_abort_ () at common_logging.c:293
#3 0x00007f61a588baf4 in GNUNET_MQ_destroy (mq=0xcaa220) at mq.c:1047
#4 0x00007f61a5eeafcd in disconnect_and_schedule_reconnect (h=0xca9fc0) at transport_api_core.c:824
#5 0x00007f61a5eeb419 in GNUNET_TRANSPORT_core_disconnect (handle=0xca9fc0) at transport_api_core.c:935
#6 0x0000000000409a19 in GSC_KX_done () at gnunet-service-core_kx.c:1880
#7 0x0000000000402970 in shutdown_task (cls=0x0) at gnunet-service-core.c:70
#8 0x00007f61a589bf85 in run_ready (rs=0xcaf650, ws=0xcaf6e0) at scheduler.c:620
#9 0x00007f61a589c8d0 in GNUNET_SCHEDULER_run (task=0x7f61a58a9a4b <service_task>, task_cls=0x7ffdbb376800) at scheduler.c:887
#10 0x00007f61a58ab77e in GNUNET_SERVICE_run (argc=3, argv=0x7ffdbb376a88, service_name=0x40d279 "core", options=GNUNET_SERVICE_OPTION_NONE,
    task=0x4029ae <run>, task_cls=0x0) at service.c:1497
#11 0x0000000000402c8a in main (argc=3, argv=0x7ffdbb376a88) at gnunet-service-core.c:145
Steps To Reproduce$ pwd
src/cadet
$ make check
[...]
$ ls core.*gnunet-service-core -1
'core.19343.!tmp!gnunet!lib!gnunet!libexec!gnunet-service-core'
'core.19349.!tmp!gnunet!lib!gnunet!libexec!gnunet-service-core'
'core.19352.!tmp!gnunet!lib!gnunet!libexec!gnunet-service-core'
'core.19536.!tmp!gnunet!lib!gnunet!libexec!gnunet-service-core'
'core.19543.!tmp!gnunet!lib!gnunet!libexec!gnunet-service-core'
'core.19552.!tmp!gnunet!lib!gnunet!libexec!gnunet-service-core'
'core.19772.!tmp!gnunet!lib!gnunet!libexec!gnunet-service-core'
'core.19776.!tmp!gnunet!lib!gnunet!libexec!gnunet-service-core'
'core.19788.!tmp!gnunet!lib!gnunet!libexec!gnunet-service-core'
'core.19798.!tmp!gnunet!lib!gnunet!libexec!gnunet-service-core'
Additional Information(gdb) bt full
#0 0x00007f61a451e04f in raise () from /usr/lib/libc.so.6
No symbol table info available.
#1 0x00007f61a451f47a in abort () from /usr/lib/libc.so.6
No symbol table info available.
#2 0x00007f61a585b799 in GNUNET_abort_ () at common_logging.c:293
No locals.
#3 0x00007f61a588baf4 in GNUNET_MQ_destroy (mq=0xcaa220) at mq.c:1047
        dnh = 0x4027f0 <_start>
        __FUNCTION__ = "GNUNET_MQ_destroy"
#4 0x00007f61a5eeafcd in disconnect_and_schedule_reconnect (h=0xca9fc0) at transport_api_core.c:824
        __FUNCTION__ = "disconnect_and_schedule_reconnect"
#5 0x00007f61a5eeb419 in GNUNET_TRANSPORT_core_disconnect (handle=0xca9fc0) at transport_api_core.c:935
        __FUNCTION__ = "GNUNET_TRANSPORT_core_disconnect"
#6 0x0000000000409a19 in GSC_KX_done () at gnunet-service-core_kx.c:1880
No locals.
#7 0x0000000000402970 in shutdown_task (cls=0x0) at gnunet-service-core.c:70
        __FUNCTION__ = "shutdown_task"
#8 0x00007f61a589bf85 in run_ready (rs=0xcaf650, ws=0xcaf6e0) at scheduler.c:620
        p = GNUNET_SCHEDULER_PRIORITY_SHUTDOWN
        pos = 0xcb1090
        __FUNCTION__ = "run_ready"
#9 0x00007f61a589c8d0 in GNUNET_SCHEDULER_run (task=0x7f61a58a9a4b <service_task>, task_cls=0x7ffdbb376800) at scheduler.c:887
        rs = 0xcaf650
        ws = 0xcaf6e0
        timeout = {rel_value_us = 0}
        ret = 2
        shc_int = 0xcb07f0
        shc_term = 0xcb08b0
        shc_quit = 0xcb0a30
        shc_hup = 0xcb0af0
        shc_pipe = 0xcb0970
        last_tr = 736
        busy_wait_warning = 1
        pr = 0xcb19c0
        c = 0 '\000'
        __FUNCTION__ = "GNUNET_SCHEDULER_run"
#10 0x00007f61a58ab77e in GNUNET_SERVICE_run (argc=3, argv=0x7ffdbb376a88, service_name=0x40d279 "core", options=GNUNET_SERVICE_OPTION_NONE,
    task=0x4029ae <run>, task_cls=0x0) at service.c:1497
        err = 0
        ret = 3
        cfg_fn = 0xca7700 "~/.config/gnunet.conf"
        opt_cfg_fn = 0xca7850 "/tmp/bart/testbedGIOsC1/3/config"
        loglev = 0x0
        logfile = 0x0
        do_daemonize = 0
        i = 4247981
        skew_offset = 0
        skew_variance = 0
        clock_offset = 4248185
        sctx = {cfg = 0xca7720, server = 0xcb25a0, addrs = 0x0, service_name = 0x40d279 "core", task = 0x4029ae <run>, task_cls = 0x0, v4_denied = 0x0,
          v6_denied = 0x0, v4_allowed = 0xcb7de0, v6_allowed = 0xcc0e70, my_handlers = 0xcb1aa0, addrlens = 0x0, lsocks = 0xca9690, shutdown_task = 0x0,
          timeout = {rel_value_us = 18446744073709551615}, ret = 1, ready_confirm_fd = -1, require_found = 1, match_uid = 0, match_gid = 1,
          options = GNUNET_SERVICE_OPTION_NONE}
        cfg = 0xca7720
        xdg = 0x0
        service_options = {{shortName = 99 'c', name = 0x7f61a58c322d "config", argumentHelp = 0x7f61a58c3234 "FILENAME",
            description = 0x7f61a58c3240 "use configuration file FILENAME", require_argument = 1, processor = 0x7f61a5885b95 <GNUNET_GETOPT_set_string>,
            scls = 0x7ffdbb3768b8}, {shortName = 100 'd', name = 0x7f61a58c3260 "daemonize", argumentHelp = 0x0,
            description = 0x7f61a58c3270 "do daemonize (detach from terminal)", require_argument = 0, processor = 0x7f61a5885b68 <GNUNET_GETOPT_set_one>,
            scls = 0x7ffdbb3768a4}, {shortName = 104 'h', name = 0x7f61a58c3294 "help", argumentHelp = 0x0,
            description = 0x7f61a58c3299 "print this help", require_argument = 0, processor = 0x7f61a58855ec <GNUNET_GETOPT_format_help_>, scls = 0x0}, {
            shortName = 76 'L', name = 0x7f61a58c32a9 "log", argumentHelp = 0x7f61a58c32ad "LOGLEVEL",
            description = 0x7f61a58c32b8 "configure logging to use LOGLEVEL", require_argument = 1, processor = 0x7f61a5885b95 <GNUNET_GETOPT_set_string>,
            scls = 0x7ffdbb3768b0}, {shortName = 108 'l', name = 0x7f61a58c32da "logfile", argumentHelp = 0x7f61a58c32e2 "LOGFILE",
            description = 0x7f61a58c32f0 "configure logging to write logs to LOGFILE", require_argument = 1,
            processor = 0x7f61a5885b95 <GNUNET_GETOPT_set_string>, scls = 0x7ffdbb3768a8}, {shortName = 118 'v', name = 0x7f61a58c331b "version",
            argumentHelp = 0x0, description = 0x7f61a58c3323 "print the version number", require_argument = 0,
            processor = 0x7f61a58855a6 <GNUNET_GETOPT_print_version_>, scls = 0x7f61a58c333c}, {shortName = 0 '\000', name = 0x0, argumentHelp = 0x0,
            description = 0x0, require_argument = 0, processor = 0x0, scls = 0x0}}
        __FUNCTION__ = "GNUNET_SERVICE_run"
#11 0x0000000000402c8a in main (argc=3, argv=0x7ffdbb376a88) at gnunet-service-core.c:145
No locals.


TagsNo tags attached.

Activities

Christian Grothoff

2016-09-22 13:48

manager   ~0011133

Possibly fixed in SVN 37974.

Bart Polot

2016-09-27 19:08

manager   ~0011186

Got another CORE abort(), but this one seems different:

#0 0x00007f682685a04f in raise () from /usr/lib/libc.so.6
#1 0x00007f682685b47a in abort () from /usr/lib/libc.so.6
#2 0x00007f6827b955f7 in GNUNET_abort_ () at common_logging.c:293
#3 0x0000000000404230 in GSC_CLIENTS_notify_client_about_neighbour (client=0x14bcd50, neighbour=0x14aeb20, tmap_old=0x14ac390, tmap_new=0x14c3650)
    at gnunet-service-core.c:693
#4 0x0000000000404689 in GSC_CLIENTS_notify_clients_about_neighbour (neighbour=0x14aeb20, tmap_old=0x14ac390, tmap_new=0x14c3650)
    at gnunet-service-core.c:761
#5 0x000000000040c0ef in GSC_SESSIONS_set_typemap (peer=0x14aeb20, msg=0x7ffff69fbc78) at gnunet-service-core_sessions.c:949
#6 0x0000000000408bc3 in deliver_message (cls=0x0, client=0x7ffff69fbcd0, m=0x7ffff69fbc78) at gnunet-service-core_kx.c:1683
#7 0x00007f6827bde56b in GNUNET_SERVER_mst_receive (mst=0x14b7880, client_identity=0x7ffff69fbcd0, buf=0x7ffff69fbc78 "", size=43, purge=1, one_shot=0)
    at server_mst.c:262
#8 0x00000000004089cf in handle_encrypted (cls=0x14aecf0, m=0x7ffff69fbf84) at gnunet-service-core_kx.c:1623
#9 0x00007f6827bc36a4 in GNUNET_MQ_inject_message (mq=0x14aebb0, mh=0x7ffff69fbf84) at mq.c:282
#10 0x00007f68282237e9 in handle_recv (cls=0x14abe50, im=0x7ffff69fbf60) at transport_api_core.c:708
#11 0x00007f6827bc36a4 in GNUNET_MQ_inject_message (mq=0x14ac100, mh=0x7ffff69fbf60) at mq.c:282
#12 0x00007f6827bc4d35 in handle_client_message (cls=0x14ac100, msg=0x7ffff69fbf60) at mq.c:760
#13 0x00007f6827b91f23 in receive_task (cls=0x14ac080) at client.c:610
#14 0x00007f6827bd607f in run_ready (rs=0x14b1700, ws=0x14b1790) at scheduler.c:620
#15 0x00007f6827bd69ca in GNUNET_SCHEDULER_run (task=0x7f6827be66a1 <service_main>, task_cls=0x7ffff69fc480) at scheduler.c:887
#16 0x00007f6827beb281 in GNUNET_SERVICE_ruN_ (argc=3, argv=0x7ffff69fc848, service_name=0x40d01a "core", options=GNUNET_SERVICE_OPTION_NONE,
    service_init_cb=0x404c2a <run>, connect_cb=0x403bbf <client_connect_cb>, disconnect_cb=0x403dc1 <client_disconnect_cb>, cls=0x0,
    handlers=0x7ffff69fc610) at service_new.c:1724
#17 0x00000000004050ce in main (argc=3, argv=0x7ffff69fc848) at gnunet-service-core.c:951

(gdb) up 3
#3 0x0000000000404230 in GSC_CLIENTS_notify_client_about_neighbour (client=0x14bcd50, neighbour=0x14aeb20, tmap_old=0x14ac390, tmap_new=0x14c3650) at gnunet-service-core.c:693
693 GNUNET_assert (old_match ==
(gdb) l
688 client->types,
689 client->tcnt);
690 if ( (old_match == new_match) &&
691 (GNUNET_CORE_OPTION_INIT != (client->options & GNUNET_CORE_OPTION_INIT)) )
692 {
693 GNUNET_assert (old_match ==
694 GNUNET_CONTAINER_multipeermap_contains (client->connectmap,
695 neighbour));
696 return; /* no change */
697 }
(gdb) p *old_match
Cannot access memory at address 0x1
(gdb) p new_match
$1 = 1
(gdb) p *neighbour
$2 = {public_key = {q_y = "R\224\253\246\222!\324\bV\274\241=\366&c\244*ʔ\317+\260(\230\t\227\034Uq\255*X"}}
(gdb) p/x *neighbour
$3 = {public_key = {q_y = {0x52, 0x94, 0xab, 0xa6, 0x92, 0x21, 0xd4, 0x8, 0x56, 0xbc, 0xa1, 0x3d, 0xf6, 0x26, 0x63, 0xa4, 0x2a, 0xca, 0x94, 0xcf, 0x2b, 0xb0, 0x28, 0x98, 0x9, 0x97, 0x1c, 0x55, 0x71, 0xad, 0x2a, 0x58}}}
(gdb) p *client
$4 = {next = 0x14abed0, prev = 0x0, client = 0x14afcb0, mq = 0x14ae550, types = 0x0, requests = 0x0, connectmap = 0x14aeae0, options = 0, tcnt = 0}
(gdb) p *client->connectmap
$5 = {map = 0x14afda0, size = 0, map_length = 16, use_small_entries = 0, modification_counter = 0}

Christian Grothoff

2016-09-27 19:36

manager   ~0011187

Hmm. This looks like the one I fixed last night. Is this from SVN HEAD or slightly older?

Bart Polot

2016-09-27 23:38

manager   ~0011188

Last edited: 2016-09-27 23:38

This is from svn HEAD, checked out this afternoon, last checkout was last week.

Bart Polot

2016-09-28 11:46

manager   ~0011189

Just to make sure I did a new update (only httpd and dns changes) and a clean build and it still happens consistently doing cadet tests.

Christian Grothoff

2016-09-29 00:10

manager   ~0011197

Odd. I could not reproduce this. I've now cleaned up the respective logic some more, please really try with SVN 38039, the only thing I get with that revision is a metric ton of CADET core dumps.

Issue History

Date Modified Username Field Change
2016-09-20 03:26 Bart Polot New Issue
2016-09-20 03:26 Bart Polot Status new => assigned
2016-09-20 03:26 Bart Polot Assigned To => Christian Grothoff
2016-09-22 13:48 Christian Grothoff Note Added: 0011133
2016-09-22 20:06 Christian Grothoff Status assigned => resolved
2016-09-22 20:06 Christian Grothoff Fixed in Version => 0.11.0pre66
2016-09-22 20:06 Christian Grothoff Resolution open => fixed
2016-09-22 20:06 Christian Grothoff Target Version => 0.11.0pre66
2016-09-27 19:08 Bart Polot Note Added: 0011186
2016-09-27 19:36 Christian Grothoff Note Added: 0011187
2016-09-27 23:38 Bart Polot Note Added: 0011188
2016-09-27 23:38 Bart Polot Note Edited: 0011188
2016-09-28 11:46 Bart Polot Note Added: 0011189
2016-09-29 00:10 Christian Grothoff Note Added: 0011197
2018-06-07 00:24 Christian Grothoff Status resolved => closed