Bug 27148 - Failed assertion in piglit test 'bin/fbo-flushing -auto' with RV790
Summary: Failed assertion in piglit test 'bin/fbo-flushing -auto' with RV790
Status: RESOLVED WORKSFORME
Alias: None
Product: Mesa
Classification: Unclassified
Component: Drivers/DRI/R600 (show other bugs)
Version: git
Hardware: x86-64 (AMD64) Linux (All)
: medium normal
Assignee: Default DRI bug account
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-03-17 15:51 UTC by Chris Rankin
Modified: 2012-09-11 09:50 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments

Description Chris Rankin 2010-03-17 15:51:36 UTC
fbo-flushing: /home/chris/Programs/piglit/tests/fbo/fbo-flushing.c:79: piglit_display: Assertion `__glewCheckFramebufferStatusEXT(0x8D40) == 0x8CD5' failed.
Aborted (core dumped)

Core was generated by `bin/fbo-flushing -auto'.
Program terminated with signal 6, Aborted.
#0  0x00000039638326c5 in raise () from /lib64/libc.so.6
Missing separate debuginfos, use: debuginfo-install expat-2.0.1-8.fc12.x86_64 glew-1.5.1-3.fc12.x86_64 glibc-2.11.1-1.x86_64 libICE-1.0.6-1.fc12.x86_64 libSM-1.1.0-7.fc12.x86_64 libX11-1.3-1.fc12.x86_64 libXau-1.0.5-1.fc12.x86_64 libXdamage-1.1.2-1.fc12.x86_64 libXext-1.1-2.fc12.x86_64 libXfixes-4.0.4-1.fc12.x86_64 libXi-1.3-2.fc12.x86_64 libXmu-1.0.5-1.fc12.x86_64 libXt-1.0.7-1.fc12.x86_64 libXxf86vm-1.1.0-1.fc12.x86_64 libdrm-2.4.18-0.1.fc12.x86_64 libgcc-4.4.3-4.fc12.x86_64 libjpeg-6b-46.fc12.x86_64 libstdc++-4.4.3-4.fc12.x86_64 libtiff-3.9.2-3.fc12.x86_64 libuuid-2.16.2-7.fc12.x86_64 libxcb-1.5-1.fc12.x86_64 zlib-1.2.3-23.fc12.x86_64
(gdb) where
#0  0x00000039638326c5 in raise () from /lib64/libc.so.6
#1  0x0000003963833ea5 in abort () from /lib64/libc.so.6
#2  0x000000396382b7b5 in __assert_fail () from /lib64/libc.so.6
#3  0x0000000000402950 in piglit_display ()
    at /home/chris/Programs/piglit/tests/fbo/fbo-flushing.c:78
#4  0x0000000000403fb9 in display ()
    at /home/chris/Programs/piglit/tests/util/piglit-framework.c:44
#5  0x00007fa56dc583bb in processWindowWorkList (window=0x2296310)
    at glut_event.c:1307
#6  0x00007fa56dc59224 in __glutProcessWindowWorkLists () at glut_event.c:1358
#7  glutMainLoop () at glut_event.c:1379
#8  0x0000000000404149 in main (argc=1, argv=0x7fffadb4ad18)
    at /home/chris/Programs/piglit/tests/util/piglit-framework.c:94
Comment 1 Chris Rankin 2010-03-18 13:18:17 UTC
This test is failing for r600_dri.so because glCheckFramebufferStatusEXT() is returning GL_FRAMEBUFFER_UNSUPPORTED. The reason that it returns "GL_FRAMEBUFFER_UNSUPPORTED" is because the radeonIsFormatRenderable() function in radeon_texture.c seems only to understand the following formats:

- MESA_FORMAT_Z16
- MESA_FORMAT_S8_Z24
- _dri_texformat_argb8888
- _dri_texformat_rgb565
- _dri_texformat_argb1555
- _dri_texformat_argb4444

This is _considerably_ fewer than the number of formats listed in r300IsFormatRenderable().

For reference, the piglit test needs MESA_FORMAT_RGBA8888_REV.
Comment 2 Török Edwin 2010-03-26 03:34:58 UTC
This prevents blender 2.5's "OpenGL render image", and "OpenGL render animation" from working.
It says it failed to create OpenGL offscreen buffer:
      GPUFrameBuffer: framebuffer incomplete error 36061
      Unsupported framebuffer format.

By looking at 
./source/blender/gpu/intern/gpu_extensions.c in blender I see it needs these:
type = GL_UNSIGNED_BYTE;
format = GL_DEPTH_COMPONENT;
internalformat = GL_DEPTH_COMPONENT;

type = GL_UNSIGNED_BYTE;
format = GL_RGBA;
internalformat = GL_RGBA8;
Comment 3 Andreas Boll 2012-09-11 09:50:53 UTC
Note: classic r600 driver has been abandoned.

works correctly with r600g (gallium driver) on my rv770
tested with mesa git master e81ee67b51651e99e7e8e52c1ccafc66835d57cd
and mesa 8.0.4


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.