fritsch Wrote:It hangs in fglrx, i suppose during swapBuffers call or similar.... too much GL in xvba-driver which can interfere. But let`s see your log.
First idea (some month ago) was to fix xvba-driver, cause you do only get this kind of hangs hang after having watched a movie with vaapi over xvba-driver. But we decided differently, to implement raw xvba.
But! we need to get this fixed. No solution if vaapi crashes for all AMD folks outside when eden is released.
You use the latest Catalyst btw.? 11.11?
Within the debugger, I noticed this is different. Sometime after skipping in movies, stopping them and jumping to live tv, I found that xbmc.bin froze (not even logging anything).
However, I wasn't able to Strg+C in gdb back to the prompt.
last messages in xbmc.log:
Code:
23:56:38 T:140736583833344 INFO: CDVDPlayerVideo - Stillframe left, switching to normal playback
23:56:38 T:140736583833344 DEBUG: VAAPI - attempting to open codec 28 with profile 77 at level 40 with 2 reference frames
23:56:38 T:140736676964096 NOTICE: Opening teletext stream: 4 source: 256
23:56:38 T:140736676964096 NOTICE: Creating teletext data thread
23:56:38 T:140736676964096 NOTICE: Opening audio stream: 2 source: 256
23:56:38 T:140736676964096 NOTICE: Finding audio codec for: 86016
23:56:38 T:140736676964096 DEBUG: FactoryCodec - Audio: libmad - Opening
23:56:38 T:140736676964096 DEBUG: SECTION:LoadDLL(libmad.so.0)
23:56:38 T:140736751122176 DEBUG: Thread CDVDTeletextData start, auto delete: 0
23:56:38 T:140736751122176 NOTICE: running thread: CDVDTeletextData
23:56:38 T:140736676964096 DEBUG: Loading: libmad.so.0
23:56:38 T:140736583833344 DEBUG: VAAPI - initialize version 0.32
23:56:38 T:140736583833344 DEBUG: VAAPI - attrib 5 (get/---) min 1 max 1 value 0x1
23:56:38 T:140736583833344 DEBUG: VAAPI - attrib 4 (get/set) min 0 max 16777215 value 0xffffff
23:56:38 T:140736583833344 DEBUG: VAAPI - attrib 0 (get/set) min -100 max 100 value 0x0
23:56:38 T:140736583833344 DEBUG: VAAPI - attrib 1 (get/set) min -100 max 100 value 0x0
23:56:38 T:140736583833344 DEBUG: VAAPI - attrib 2 (get/set) min -100 max 100 value 0x0
23:56:38 T:140736583833344 DEBUG: VAAPI - attrib 3 (get/set) min -100 max 100 value 0x0
23:56:38 T:140736583833344 DEBUG: VAAPI - profile 7
23:56:38 T:140736583833344 DEBUG: VAAPI - profile 10
23:56:38 T:140736583833344 DEBUG: VAAPI - making sure 7 surfaces are allocated for given 2 references
Checking with top, I found that xbmc.bin loaded both cpus. Stracing the process xbmc.bin: Permission denied.
Last output of gdb:
Code:
[Thread 0x7fffcfa32700 (LWP 3221) exited]
[New Thread 0x7fffcfa32700 (LWP 3222)]
[New Thread 0x7fffc9960700 (LWP 3227)]
[New Thread 0x7fffdec60700 (LWP 3228)]
[New Thread 0x7fffca161700 (LWP 3229)]
libva: VA-API version 0.32.0
libva: User requested driver 'xvba'
libva: Trying to open /usr/lib/va/drivers/xvba_drv_video.so
[New Thread 0x7fffd40eb700 (LWP 3230)]
libva: va_openDriver() returns 0
[New Thread 0x7fffd38ea700 (LWP 3231)]
^C
^C^C^C^C^C^C
The last thread fork was pid 3231 - that one is still running and gdb was waiting for it (indefinitely - 3065 is "gdb /usr/lib/xbmc/xbmc.bin"):
Code:
xbmc@xbmc:~/.xbmc/temp$ sudo strace -p 3065
Process 3065 attached - interrupt to quit
wait4(3231,
Don't know how to go on here, the only way to help is kill -9 gdb - no bt possible ;-(
EDIT: Without debugger, xbmc.bin is traceable. Freezing in "futex(0x7fc068000020, FUTEX_WAIT_PRIVATE, 2, NULL"