FernetMenta / xbmc

Fork of XBMC Main PVR Development Repository.
http://xbmc.org
Other
55 stars 20 forks source link

XBMC completely freezes #59

Closed Zealota74 closed 12 years ago

Zealota74 commented 12 years ago

It is happens during listening to the music from samba server when Opengl Spectrum plugin is active. XBMC freezes, after a few minutes but mp3 music is playing until track will end. From SSH console "killall -9 xbmc.bin" not working but usually does. Only "reboot" can help.

Platform. Asrock H61M-itx + G530 + Radeon HD5450. PVR, xvdr plugin. XBMC log: http://paste.ubuntu.com/1100729/

Dmesg log gives: [ 3449.424649] [fglrx] ASIC hang happened [ 3449.424656] Pid: 1489, comm: xbmc.bin Tainted: P O 3.2.22 #1 [ 3449.424659] Call Trace: [ 3449.424698] [] ? firegl_hardwareHangRecovery+0x1c/0x40 [fglrx] [ 3449.424772] [] ? _ZN18mmEnginesContainer9timestampEP26_QS_MM_TIMESTAMP_PACKET_INP27_QS_MM_TIMESTAMP_PACKET_OUT+0x1e4/0x220 [fglrx] [ 3449.424840] [] ? _Z22uQSMultiMediaTimestampPvP26_QS_MM_TIMESTAMP_PACKET_INP27_QS_MM_TIMESTAMP_PACKET_OUT+0x28/0x30 [fglrx] [ 3449.424905] [] ? _Z15uQSPM4TimestampjP20_QS_PM4_TS_PACKET_IN+0x8e/0xa0 [fglrx] [ 3449.424968] [] ? _ZN15QS_PRIVATE_CORE25escapeMultiMediaInterfaceEP21_QS_QUERY_API_CALL_INPvjS2_j+0x133/0x140 [fglrx] [ 3449.425027] [] ? Z8uCWDDEQCjjjPvjS+0x1054/0x12f0 [fglrx] [ 3449.425080] [] ? CMMQS_uCWDDEQC+0x34/0x40 [fglrx] [ 3449.425118] [] ? firegl_cmmqs_CWDDE_32+0x3ce/0x500 [fglrx] [ 3449.425155] [] ? firegl_cmmqs_CWDDE32+0x86/0x130 [fglrx] [ 3449.425164] [] ? ns_capable+0x33/0x70 [ 3449.425198] [] ? firegl_cmmqs_createdriver+0x1c0/0x1c0 [fglrx] [ 3449.425229] [] ? firegl_ioctl+0x226/0x2b0 [fglrx] [ 3449.425236] [] ? __switch_to+0xf2/0x1f0 [ 3449.425260] [] ? ip_firegl_mmap+0x80/0x80 [fglrx] [ 3449.425284] [] ? ip_firegl_unlocked_ioctl+0x13/0x20 [fglrx] [ 3449.425290] [] ? do_vfs_ioctl+0x7f/0x5a0 [ 3449.425298] [] ? try_to_wake_up+0x5c/0xd0 [ 3449.425303] [] ? sys_ioctl+0x2e/0x50 [ 3449.425309] [] ? sysenter_do_call+0x12/0x26 [ 3449.425316] [] ? init_amd+0x3eb/0x53d [ 3449.425321] pubdev:0x1f95e29a0, num of device:-112085944 , name:(null), major 98, minor 0. [ 3449.425326] device 0 : 0xf3f9c000 . [ 3449.425329] Asic ID:0x68f9, revision:0x3c, MMIOReg:0x8f9080000. [ 3449.425334] FB phys addr: 0xe0000000, MC :0xf00000000, Total FB size :0x20000000. [ 3449.425338] gart table MC:0xf0fb0d000, Physical:0xefb0d000, size:0x1f2000. [ 3449.425343] mc_node :FB, total 1 zones [ 3449.425347] MC start:0xf00000000, Physical:0xe0000000, size:0xfd00000. [ 3449.425351] Mapped heap -- Offset:0x0, size:0xfb0d000, reference count:13, mapping count:0, [ 3449.425356] Mapped heap -- Offset:0x0, size:0x1000000, reference count:1, mapping count:0, [ 3449.425360] Mapped heap -- Offset:0xfb0d000, size:0x1f3000, reference count:1, mapping count:0, [ 3449.425365] mc_node :INV_FB, total 1 zones [ 3449.425368] MC start:0xf0fd00000, Physical:0xefd00000, size:0x10300000. [ 3449.425372] Mapped heap -- Offset:0x102f4000, size:0xc000, reference count:1, mapping count:0, [ 3449.425377] mc_node :GART_USWC, total 3 zones [ 3449.425380] MC start:0x27590000, Physical:0x0, size:0x26c00000. [ 3449.425384] Mapped heap -- Offset:0x2030000, size:0x800000, reference count:2, mapping count:0, [ 3449.425389] Mapped heap -- Offset:0x30000, size:0x2000000, reference count:15, mapping count:0, [ 3449.425394] mc_node :GART_CACHEABLE, total 3 zones [ 3449.425397] MC start:0x10400000, Physical:0x0, size:0x17190000. [ 3449.425401] Mapped heap -- Offset:0x0, size:0x200000, reference count:4, mapping count:0, [ 3449.425406] Mapped heap -- Offset:0xef000, size:0x11000, reference count:1, mapping count:0, [ 3449.425411] GRBM : 0xa0003ca0, SRBM : 0x20004ec0 . [ 3449.425416] CP_RB_BASE : 0x275c00, CP_RB_RPTR : 0x1c360 , CP_RB_WPTR :0x1c360. [ 3449.425422] CP_IB1_BUFSZ:0xac0, CP_IB1_BASE_HI:0x0, CP_IB1_BASE_LO:0x27d3d000. [ 3449.425426] last submit IB buffer -- MC :0x27d3d000,phys:0x78f7c000. [ 3449.425431] Dump the trace queue. [ 3449.425434] End of dump

FernetMenta commented 12 years ago

Asic hang is a known problem with fglrx. Not sure by what exactly it is caused. I have mainly done video playback but not music visualizations. There might be a problem in Opengl spectrum which triggers this problem. Do you observe this hang in other use cases as well?

susisstrolch commented 12 years ago

OpenGL spectum is deactivated. Also the visualisation plugin. I'm simply listening internet radio - only activity is the RSS feed and the radio info. The current git fails after 2000-5000 secs. Currently I'm running >>the same binary<< in a screen / gdb session 'til 8hrs w/o a ASIC hang!

Zealota74 commented 12 years ago

I have also deactivated the visualization plugin. The behavior has changed. After several minutes screen goes dimmed mode and after next few minutes xbmc powers off the TV set with cut off sound link to AV receiver. Any button of remote controller restores audio and video. I think I know why. Power saving is activated and after 5 minutes xbmc tries go to sleep mode (deactivate the TV set attached to HDMI output). It's strange because active music player should deactivates sleep mode. Maybe visualization plugin works against power saving mode and only hangs XBMC.

Finally I suppose Power Saving mode activated in "Put display to sleep mode" hangs XBMC when OpenGL spectrum is activated. The other issue music player doesn't deactivate Sleep mode only visualization plugins do.

Plugin Waveform works well also deactivates power saving and XBMC is usable.

If I choose projectM visualization plugin XBMC resets when XBMC goes to FullScreen. Here is fragment of log:


23:30:18 T:3045639936 DEBUG: OnKey: 213 (d5) pressed, action is FullScreen 23:30:18 T:3045639936 DEBUG: Activating window ID: 12006 23:30:19 T:3045639936 DEBUG: ------ Window Deinit (MyMusicSongs.xml) ------ 23:30:19 T:3045639936 DEBUG: ------ Window Init (MusicVisualisation.xml) ------ 23:30:19 T:3045639936 INFO: Loading skin file: MusicVisualisation.xml 23:30:19 T:3045639936 DEBUG: ADDON: Dll Initializing - projectM 23:30:19 T:3045639936 DEBUG: SECTION:LoadDLL(/usr/lib/xbmc/addons/visualization.projectm/projectM.vis) 23:30:19 T:3045639936 DEBUG: Loading: /usr/lib/xbmc/addons/visualization.projectm/projectM.vis 23:30:19 T:3045639936 DEBUG: Calling TransferSettings for: projectM 23:30:19 T:3045639936 ERROR: Unknown setting type 'integer' for projectM

23:30:19 T:3045639936 DEBUG: GetZipList - Processing zip://special%3a%2f%2fxbmc%2faddons%2fvisualization.projectm%2fresources%2fpresets.zip/

PS My TV set is connected to HD5450 through Yamaha 467 AV receiver.

FernetMenta commented 12 years ago

@susisstrolch

Currently I'm running >>the same binary<< in a screen / gdb session 'til 8hrs w/o a ASIC hang!

I am wondering if its still running without a freeze. Those kind of errors are hard to track down. They can be caused by clearing a texture which was queued to the GL pipeline but not yet rendered.

Note that visualizations are not part of my work here.

susisstrolch commented 12 years ago

@FernetMenta All visualisation is switched to off. So the only cause could be text blitting... As I already said to fritsch: when compiling with DEBUG=y there is a different behaviour. Frodo coredumps with "double free error", but I never saw the ASIC error. When I build w/o DEBUG, I get the ASIC error after approx 1000-3000sec, but no "double free error". Platform: Fusion (AD10)

FernetMenta commented 12 years ago

Frodo coredumps with "double free error"

Can you post the crashlog?

susisstrolch commented 12 years ago

Sorry, I whiped the core dumps and correspondig binaries. That's all I have in my post-mortem folder: http://susepaste.org/52351218

Maybe I have some more logs - will have a closer look during the day....

FernetMenta commented 12 years ago

can you give me information on what addon you use and what channel you are listening to, new feed etc. I would like to setup my system the same way as yours.

susisstrolch commented 12 years ago

I have no addon active... I'm autostarting the WDR2 Live stream (see favorites) Here are my advancedsettings: http://sprunge.us/VPRP and here the guisettings: http://sprunge.us/SgWB Favorites:http://sprunge.us/PfcP and the corresponding playlist: http://sprunge.us/aMJd

Again: the double free only showed up when I run a flavour compiled with "DEBUG=yes".

Had another look into my desaster logs. The double free showed up (according to gdb) in MusicInfoTag.cpp, around line 92...

FernetMenta commented 12 years ago

Don't you use an addon for radio?

btw: when did you delete your guisettings.xml the last time? It should not list all resolutions you never have changed.

susisstrolch commented 12 years ago

I'm not aware of using an own addon for radio... at least I don't have a active one... I simply dropped the WDR livestream URL into a playlist - this worked so far for me.

About resolutions: I never played / used them.. I configured 1920x1080 once and never touched it again... So - no idea where the list comes from - if from EDEN or from Frodo...

FernetMenta commented 12 years ago

Could you test this branch? https://github.com/FernetMenta/xbmc/tree/susi Just guessing but we need to start somewhere.

susisstrolch commented 12 years ago

Ok... will check it out... I'm just compiling your latest fix into a debug mode OpenELEC-Next... I will build with DEBUG=yes...

FernetMenta commented 12 years ago

I think the problem won't show with DEBUG=yes. Put it to a config where the problem shows most often.

FernetMenta commented 12 years ago

There is another problem with playing music. When I start music CPU load is approximately 10%. It rises constantly over time. After 60min I have close to 100% on one core. Do you observe the same?

susisstrolch commented 12 years ago

Same here - but that looks new... usually (in GUI) I see 25-30% on each cpu Mem: 680056K used, 2315208K free, 0K shrd, 70524K buff, 356968K cached CPU0: 79.4% usr 3.2% sys 0.0% nic 15.2% idle 0.0% io 0.0% irq 2.0% sirq CPU1: 0.0% usr 100% sys 0.0% nic 0.0% idle 0.0% io 0.0% irq 0.0% sirq

xbmc itself is sitting at 88% - but I also had an "ASIC hang" after 400sec... (not the susi build!) Cause I'm on business trip I can only view the command line (top) and not the gui...

susisstrolch commented 12 years ago

cool... never saw this one before: [ 36.403113] [fglrx:IRQMGR_callback_hifreq_interrupt] ERROR irqSourceID = 0xa0000001 is unknown

FernetMenta commented 12 years ago

what build?

susisstrolch commented 12 years ago

Starting XBMC (12.0-ALPHA4 Git:8471764) - the susi build in DEBUG mode up since 45min w/o ASIC or SEGFAULT.. Load ~55% on each core

Just uploading the non-DEBUG package...

susisstrolch commented 12 years ago

12.0-ALPHA4 Git:8471764 - non-debug: running since 45min, no ASIC hang until now...

susisstrolch commented 12 years ago

ok - seems you hit the ASIC problem with the first try... uptime 22:18:13 up 3:30, load average: 1.30, 1.41, 1.41

no "ASIC hang" until now.... And - about the load: Mem: 1111904K used, 1883360K free, 0K shrd, 182796K buff, 619204K cached CPU0: 50.8% usr 1.5% sys 0.0% nic 47.6% idle 0.0% io 0.0% irq 0.0% sirq CPU1: 49.8% usr 1.7% sys 0.0% nic 48.1% idle 0.0% io 0.0% irq 0.2% sirq Load average: 1.16 1.24 1.34 3/212 5858 PID PPID USER STAT VSZ %VSZ CPU %CPU COMMAND 2894 1 root R 1565m 53.5 0 49.8 /usr/lib/xbmc/xbmc.bin --standalone -fs --lircdev /var/run/lirc/lircd

susisstrolch commented 12 years ago

uptime: 07:20:26 up 12:32, load average: 0.80, 1.05, 1.16 no ASIC hang happened

fritsch commented 12 years ago

@FernetMenta: Can you push this little patch to master? So we can make some testing builds to let the community test? I think a backport to the openelec tree or pinging sraue would also be great. If it doesn't fix the problem it will at least make it a lot better.

Missed something: Godlike!

FernetMenta commented 12 years ago

I have actually done two little changes in this patch. I would like to revert one of them and test again. The glFinish is ugly and I hope it is not needed.

@susisstrolch can you run a test after I have reverted one change?

FernetMenta commented 12 years ago

I am running a long term test with a radio recording, OpenGL spectrum engaged. CPU load stays down at 27%. There must be a problem with radio live streams. Either there is no pre-buffering or it plays slightly faster than the stream comes in (that's not my construction site)

fritsch commented 12 years ago

@FernetMenta: Today is the last chance for some weeks that ppa packages can be updated. Holidays are near.

FernetMenta commented 12 years ago

ok, I pushed to master and deleted susi branch.

susisstrolch commented 12 years ago

@FernetMenta: Will revert to master and check your latest build

susisstrolch commented 12 years ago

@Fernetmenta: Just started your latest build. Will give feedback - but I simply expect it to work. Thanks for your great work!

susisstrolch commented 12 years ago

@FernetMenta: I'd say we can close this issue - works like a charme since nearly two days non-stop Internet Radio and Video... Thanks again!

fritsch commented 12 years ago

@FernetMenta: What was the link to your amazon wishlist again?

FernetMenta commented 12 years ago

Ok, thanks for the long term test. I will close it.

@fritsch http://www.amazon.com/Yamaha-RX-V673-7-2-Channel-Network-Receiver/dp/B007JF85WE/ref=sr_1_4?ie=UTF8&qid=1343576365&sr=8-4&keywords=av+receiver

just kidding :)