Bug 74944

Summary: libomx_r600 segfault on RadeonSI hardware
Product: Mesa Reporter: Iaroslav Andrusyak <pontostroy>
Component: OtherAssignee: mesa-dev
Status: CLOSED FIXED QA Contact:
Severity: enhancement    
Priority: medium    
Version: git   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:

Description Iaroslav Andrusyak 2014-02-13 18:37:31 UTC
Radeon hd 7790, 
ls /usr/lib64/bellagio/
libomxaudio_effects.so.0      libomxclocksrc.so.0      libomx_r600.so    libomx_r600.so.0.0.0  libomx_radeonsi.so.0      libomxvideosched.so.0
libomxaudio_effects.so.0.0.0  libomxclocksrc.so.0.0.0  libomx_r600.so.0  libomx_radeonsi.so    libomx_radeonsi.so.0.0.0  libomxvideosched.so.0.0.0

omxregister-bellagio 
EE r600_pipe.c:259 r600_create_context - Unsupported chip class 9.
Segmentation fault

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff70ff5da in r600_destroy_common_screen (rscreen=0x62b310) at r600_pipe_common.c:641
641     r600_pipe_common.c: No such file or directory.
(gdb) bt
#0  0x00007ffff70ff5da in r600_destroy_common_screen (rscreen=0x62b310) at r600_pipe_common.c:641
#1  0x00007ffff6f8a081 in vl_screen_destroy (vscreen=0x62a800) at ../../../../../src/gallium/auxiliary/vl/vl_winsys_dri.c:414
#2  0x00007ffff710b4b5 in omx_put_screen () at entrypoint.c:101
#3  0x00007ffff711cd41 in vid_enc_LoaderComponent (comp=0x61ace0) at vid_enc.c:116
#4  0x00007ffff710b3e9 in omx_component_library_Setup (stComponents=stComponents@entry=0x61ac70) at entrypoint.c:64
#5  0x0000000000401a25 in buildComponentsList (omxregistryfp=omxregistryfp@entry=0x605080, componentspath=componentspath@entry=0x402556 "/usr/lib64/bellagio/", verbose=verbose@entry=0)
    at omxregister.c:249
#6  0x0000000000401352 in main (argc=<optimized out>, argv=<optimized out>) at omxregister.c:483


rm /usr/lib64/bellagio/libomx_r600.so*

omxregister-bellagio -v

 Scanning directory /usr/lib64/bellagio/

 Scanning library /usr/lib64/bellagio/libomx_radeonsi.so
Component OMX.radeonsi.video_decoder registered with 0 quality levels
  Specific role OMX.radeonsi.video_decoder.mpeg2 registered
  Specific role OMX.radeonsi.video_decoder.avc registered
Component OMX.radeonsi.video_encoder registered with 0 quality levels
  Specific role OMX.radeonsi.video_encoder.avc registered

 2 OpenMAX IL ST static components in 1 libraries succesfully scanned
Comment 1 Christian König 2014-02-13 18:40:57 UTC
That is expected behaviour. The OMX state tracker currently doesn't chose the correct driver for you, you need to do so manually.

So for SI hardware you need to compile only with radeonsi driver, for r600 only with r600 driver.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.