Opened 5 years ago

Closed 5 years ago

#467 closed defect (fixed)

fso-abyss segfaults on session opening

Reported by: deubeuliou Owned by: mickey
Priority: major Milestone:
Component: fso-abyss Version: milestone5.5
Keywords: fso-abyss libgsm0710mux Cc:


I started fso-abyss and then launched frameworkd -s ogsmd.
fso-abyss segfaults when ogsmd requests a channel.

GDB trace:

Program received signal SIGSEGV, Segmentation fault.
0x40060e10 in fso_framework_logger_debug () from /usr/lib/
(gdb) bt
#0  0x40060e10 in fso_framework_logger_debug () from /usr/lib/
#1  0x4003ad3c in gsm0710mux_manager_openSession () from /usr/lib/
#2  0x0000b250 in server_real_OpenSession ()
#3  0x00010b38 in org_freesmartphone_gsm_mux_OpenSession ()
#4  0x00010c1c in _dbus_org_freesmartphone_gsm_mux_OpenSession ()
#5  0x00011f7c in org_freesmartphone_gsm_mux_dbus_message ()
#6  0x000128c4 in server_dbus_message ()
#7  0x4013d940 in ?? () from /usr/lib/
Cannot access memory at address 0x0

I used libgsm0710mux latest rev (after the fix for the segfault at session closing, but obviously this segfault happens at session opening).

I guess the line where it segfaults is:
logger.debug( "InitSession requested for mode %s, framesize %d, port %s @ %d".printf( advanced? "advanced":"basic", framesize, port, portspeed ) );
(libgsm0710mux/manager.vala : 145)

I just saw that if no config file exists, the logger isn't set, only a warning is printed. I guess the problem is here: I have no abyss.conf, thus, "logger" is never initialised.

Change History (2)

comment:1 Changed 5 years ago by deubeuliou

I found a sample abyss.conf and with this file, fso-abyss doesn't segfault anymore.

btw, there the same kind of problem with cornucopia.conf missing (fso-abyss claims that it does not provide the <anything> channel.)

comment:2 Changed 5 years ago by mickey

  • Resolution set to fixed
  • Status changed from new to closed

Pushed some fault tolerance fixes. Will cut another release (0.9.0) of both libgsm0710mux and fso-abyss this week. Thanks!

Note: See TracTickets for help on using tickets.