Kodi Community Forum

Full Version: Segfault since ~r19300 - no logs get written
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
I have issues starting some recent builds (~r19300). X loads up with xbmc started by .xinitrc (as i did before), but i only get the normal X mousepointer and 100 cpu load. No splashscreen, gui, etc...

I wanted to have a look at the logfile, but there's none. I deleted ~/.xbmc and it gets created from scratch but no help. After ~1min xbmc segfaults with a core file and running gdb against it outputs this:

Code:
Thread 1 (process 28432):
#0  0x00007f889867c460 in strlen () from /lib/libc.so.6
#1  0x00007f88986489fe in vfprintf () from /lib/libc.so.6
#2  0x00007f889866e3aa in vsnprintf () from /lib/libc.so.6
#3  0x00007f889864ecd3 in snprintf () from /lib/libc.so.6
#4  0x00007f889ba395fd in cdio_get_default_device_linux () from /usr/lib/libcdio.so.10
#5  0x00007f889ba3742d in cdio_open_am () from /usr/lib/libcdio.so.10
#6  0x0000000000a02a21 in MEDIA_DETECT::CLibcdio::GetDeviceFileName (this=<value optimized out>)
    at cdioSupport.cpp:213
#7  0x0000000000bbc428 in CreateFile (
    lpFileName=0x2a55c58 "/opt/xbmc-linuxport/share/xbmc/userdata/RssFeeds.xml",
    dwDesiredAccess=<value optimized out>, dwShareMode=<value optimized out>,
    lpSecurityAttributes=<value optimized out>, dwCreationDisposition=<value optimized out>,
    dwFlagsAndAttributes=0, hTemplateFile=0x0) at XFileUtils.cpp:264
#8  0x0000000000a2eff0 in XFILE::CFileHD::Open (this=0x2a55590, url=<value optimized out>)
    at FileHD.cpp:87
#9  0x0000000000a230da in XFILE::CFile::Open (this=0x2a55ac8, [email protected],
    flags=<value optimized out>) at File.cpp:298
#10 0x0000000000a38374 in XFILE::CFileSpecialProtocol::Open (this=0x2a55ac0,
    url=<value optimized out>) at FileSpecialProtocol.cpp:46
#11 0x0000000000a230da in XFILE::CFile::Open (this=0x7fffa5cf8500, [email protected]f8630,
    flags=<value optimized out>) at File.cpp:298
#12 0x0000000000a24229 in XFILE::CFile::Cache ([email protected], [email protected],
    pCallback=0x0, pContext=0x0) at File.cpp:132
#13 0x00000000006c7d3d in CopyUserDataIfNeeded (strPath=<value optimized out>, [email protected])
    at Application.cpp:521
#14 0x00000000006c879c in CApplication::InitDirectoriesLinux (this=<value optimized out>)
    at Application.cpp:997
#15 0x00000000006c9518 in CApplication::Create (this=0x1220e00, hWnd=0x0) at Application.cpp:563
#16 0x0000000000908582 in main (argc=2, argv=0x7fffa5cf9608) at xbmc.cpp:125

Sorry for pasting, but 16 lines is not flooding i guess Smile

Any hints? This is Arch Linux on x86_64, kernel 2.6.29 and nvidia drivers 185.19. Maybe it has something to do with the recent update of libcdio because that's the only real difference between my older and this build.

Thanks in advance!
Haggy.

EDIT: libcdio is 0.81 (http://www.archlinux.de/?page=PackageDet...ackage=546)
It could be libcdio but it should be recent enough (before change we built against 0.81 afaik) could you please try to wipe / backup and move .xbmc aswell, just to be sure it's nothing weird there?

And how do you start XBMC, because -p have changed meaning rather recently.

Cheers,
Tobias.
BINGO!

The problem is the recent upgrade of libcdio. Running version was 0.80 (libcdio.so.7), upgraded version (which segfaults) is 0.81 (libcdio.so.10).

I'll open a trac ticket.
Topfs2 Wrote:It could be libcdio but it should be recent enough (before change we built against 0.81 afaik) could you please try to wipe / backup and move .xbmc aswell, just to be sure it's nothing weird there?

And how do you start XBMC, because -p have changed meaning rather recently.

Cheers,
Tobias.

i moved my ~/.xbmc and it got recreated (but with no logs, etc... in it). also i run xbmc only with '--standalone' as i do since i compile myself.

i narrowed it down to libcdio 0.81 being the problem. what else can i help?
Great that you found the culprit.

I wonder if this isn't 0.81 related, so third party issue and we can't do anything.
In ubuntu intrepid we have 0.78 which works.

Wonder if 0.81 is bad in ubuntu aswell.

Cheers,
Tobias.
Do you know wich version 9.04 will be shipped with?
I compile now on my 32bit sys to check if it's 64bit related. If libcdio a dependency of xbmc or may i just uninstall it since i don't have an optical drive in that rig anyway.
afaik it's a dependency, however that would probably be feature request viable to have it configure switch to turn it off.

In jaunty I don't think they have updated it, then 0.78. But I might be wrong in this.

Cheers,
Tobias
You're right, jaunty will ship libcdio 0.78. I hope my issue will be fixed nevertheless?! If it is related to xbmc...
Small update: same behaviour (segfault) with i686 / 32bit.
Update: It seems like this segfault only occurs on machines that don't have an optical drive installed. Both my laptop and htpc don't have one, but show the issue. My main rig does fine and has an optical drive.

Does that ring a bell? Meanwhile i'll have a google for bugs regarding libcdio and NO optical drive available.
Update:

Seems to be a bug with cdio_get_default_device_linux in in libcdio 0.81 when no drive is present:

http://git.savannah.gnu.org/gitweb/?p=li...bad847ba00
http://www.nabble.com/0.81-build-trouble...16745.html
http://www.redhat.com/archives/fedora-ex...03183.html

Is there a way to circumvent this or do we have to wait for a patched 0.81/0.82?