LinuxMCE Forums

General => Developers => Topic started by: Mikel on April 06, 2010, 06:23:43 pm

Title: Help! - Device dies
Post by: Mikel on April 06, 2010, 06:23:43 pm
Hi, I have an issue with a device I'm developing. If I run it at this way, I haven't any trouble:

/usr/pluto/bin SmartEPG -d 50

When I send a message to device, is working properly. But, if I reload DCERouter, when I send a message to device, it dies:

========== NEW LOG SECTION ==========
1   04/06/10 18:05:33   50 (spawning-device)   Starting... 6
1   04/06/10 18:05:33   50 (spawning-device)   Found /usr/pluto/bin/SmartEPG
Return code: 139
3   04/06/10 18:06:21   50 (spawning-device)   Device died... count=6/50 dev=50

Anybody knows something about this?

Thanks!  ;)
Title: Re: Help! - Device dies
Post by: tschak909 on April 06, 2010, 06:33:43 pm
looks like you need to run the device through the gdb debugger.
Title: Re: Help! - Device dies
Post by: Mikel on April 06, 2010, 07:51:01 pm
 gdb /usr/pluto/bin/SmartEPG

GNU gdb 6.8-debian
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "i486-linux-gnu"...
(gdb) run -d 50
Starting program: /usr/pluto/bin/SmartEPG -d 50
[Thread debugging using libthread_db enabled]
SmartEPG, v.<=version=>
Visit www.plutohome.com for source code and license information

[New Thread 0xb6e286c0 (LWP 5154)]
[New Thread 0xb6e27b90 (LWP 5160)]
[New Thread 0xb6626b90 (LWP 5162)]

--> At this point, I send a command from the admin website to device.

Need to implement command #1076 - ChannelUpdate
Parm #264 - Channel=La 2
Parm #286 - Show=Desafio Champions
Checking online users...
generating XML...

It works fine, generates the XML file... but only if I run the device from console, if I let LMCE to running the device himself, doesn't work.

By the way, I'm running Python scripts from the device.
Title: Re: Help! - Device dies
Post by: tschak909 on April 06, 2010, 09:04:21 pm
hmmm, how about running gdb against one of the coredumps in /usr/pluto/coredump ?

-Thom
Title: Re: Help! - Device dies
Post by: Mikel on April 07, 2010, 01:34:43 pm
/var/log/syslog

Apr  7 13:32:42 dcerouter kernel: [  262.187660] SmartEPG[15479]: segfault at 4 ip b740cded sp b655ff30 error 4 in libpython2.5.so.1.0[b73ae000+110000]


I'm on the right way  :D
Title: Re: Help! - Device dies
Post by: Mikel on April 07, 2010, 01:48:43 pm
Another question... who launches the devices? Root? My desktop user?
Title: Re: Help! - Device dies
Post by: Mikel on April 07, 2010, 03:30:36 pm
Done! The problem was the $PYTHONPATH enviroment variable.

Thanks!  ;)