https://bugs.freedesktop.org/show_bug.cgi?id=47955
Bug #: 47955 Summary: Celestia hit fallback on r300g from git? Classification: Unclassified Product: Mesa Version: git Platform: x86 (IA32) OS/Version: Linux (All) Status: NEW Severity: normal Priority: medium Component: Drivers/DRI/r300 AssignedTo: dri-devel@lists.freedesktop.org ReportedBy: randrik@mail.ru
Hello.
Using kernel 3.2.9 vanilla (also tried 3.1.0-rc9 + nouveau patches), libdrm/ddx/mesa from git, and X server 1.10.4 i have strange bug on my rs600:
if i start celestia (self-compiled, version 1.6.1, with gtk2 interface) in its default rendering mode - it show mostly white window. Selecting another rendering path, like "basic" or "multitexture" makes it work OK. Witb white window i have extremely low framerates, like 1.x something fps. Tried RADEON_DEBUG options , without luck.
Will add logs and screenshot.
https://bugs.freedesktop.org/show_bug.cgi?id=47955
--- Comment #1 from Andrew Randrianasulu randrik@mail.ru 2012-03-27 10:46:04 PDT --- Created attachment 59120 --> https://bugs.freedesktop.org/attachment.cgi?id=59120 dmesg
https://bugs.freedesktop.org/show_bug.cgi?id=47955
--- Comment #2 from Andrew Randrianasulu randrik@mail.ru 2012-03-27 10:47:05 PDT --- Created attachment 59121 --> https://bugs.freedesktop.org/attachment.cgi?id=59121 lspci -vvvn
https://bugs.freedesktop.org/show_bug.cgi?id=47955
Marek Olšák maraeo@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Component|Drivers/DRI/r300 |Drivers/Gallium/r300
https://bugs.freedesktop.org/show_bug.cgi?id=47955
Marek Olšák maraeo@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Component|Drivers/DRI/r300 |Drivers/Gallium/r300
--- Comment #3 from Andrew Randrianasulu randrik@mail.ru 2012-03-27 10:48:04 PDT --- Created attachment 59122 --> https://bugs.freedesktop.org/attachment.cgi?id=59122 X.org log
https://bugs.freedesktop.org/show_bug.cgi?id=47955
--- Comment #4 from Andrew Randrianasulu randrik@mail.ru 2012-03-27 10:48:58 PDT --- Created attachment 59123 --> https://bugs.freedesktop.org/attachment.cgi?id=59123 glxinfo
https://bugs.freedesktop.org/show_bug.cgi?id=47955
--- Comment #5 from Andrew Randrianasulu randrik@mail.ru 2012-03-27 10:49:41 PDT --- Created attachment 59124 --> https://bugs.freedesktop.org/attachment.cgi?id=59124 rs600's rom (from sysfs)
https://bugs.freedesktop.org/show_bug.cgi?id=47955
--- Comment #6 from Andrew Randrianasulu randrik@mail.ru 2012-03-27 10:50:16 PDT --- Created attachment 59125 --> https://bugs.freedesktop.org/attachment.cgi?id=59125 Screenshot
https://bugs.freedesktop.org/show_bug.cgi?id=47955
--- Comment #7 from Andrew Randrianasulu randrik@mail.ru 2012-03-27 11:24:08 PDT --- Mesa was compiled with ./configure --prefix=/usr/X11R7 --disable-egl --enable-gallium-llvm --with-gallium-drivers=i915 nouveau r600 r300 swrast --enable-texture-float --with-dri-drivers=i965 r200 radeon nouveau --enable-shared-glapi --enable-gallium-g3dvl --enable-vdpau --enable-debug
Gallium libs - version 2.9. (I tried DRAW_NO_LLVM=1 - bug was still there). llvmpipe renders Celestia's window correctly in all modes.
https://bugs.freedesktop.org/show_bug.cgi?id=47955
--- Comment #8 from Andrew Randrianasulu randrik@mail.ru 2012-03-27 22:59:35 PDT --- If i set "Star style" to "Points" it works OK, another two options (default "Fuzzy Points" and "Scaled Disks") produces white slow screen.
https://bugs.freedesktop.org/show_bug.cgi?id=47955
--- Comment #9 from Andrew Randrianasulu randrik@mail.ru 2012-03-27 23:17:54 PDT --- as far as I can see in celestia-1.6.1/src/celengine/render.cpp (function void Renderer::PointStarVertexBuffer::startSprites() ) - it uses some combination of GL_ARB_point_sprite and vertex shaders .... Any ideas what can fail with this combo on rs600 ?
----------------------------
void Renderer::PointStarVertexBuffer::startSprites(const GLContext& _context) { context = &_context; assert(context->getVertexProcessor() != NULL || !useSprites); // vertex shaders required for new star rendering
unsigned int stride = sizeof(StarVertex); glEnableClientState(GL_VERTEX_ARRAY); glVertexPointer(3, GL_FLOAT, stride, &vertices[0].position); glEnableClientState(GL_COLOR_ARRAY); glColorPointer(4, GL_UNSIGNED_BYTE, stride, &vertices[0].color);
VertexProcessor* vproc = context->getVertexProcessor(); vproc->enable(); vproc->use(vp::starDisc); vproc->enableAttribArray(6); vproc->attribArray(6, 1, GL_FLOAT, stride, &vertices[0].size);
glDisableClientState(GL_TEXTURE_COORD_ARRAY); glDisableClientState(GL_NORMAL_ARRAY);
glEnable(GL_POINT_SPRITE_ARB); glTexEnvi(GL_POINT_SPRITE_ARB, GL_COORD_REPLACE_ARB, GL_TRUE);
useSprites = true; } --------------------------------------------
Any piglit test?
https://bugs.freedesktop.org/show_bug.cgi?id=47955
--- Comment #10 from Andrew Randrianasulu randrik@mail.ru 2012-03-27 23:48:29 PDT --- wild guess: r300g need something like this?
http://cgit.freedesktop.org/mesa/mesa/commit/?id=022e270b1b972b6d04890f1ac1f...
https://bugs.freedesktop.org/show_bug.cgi?id=47955
--- Comment #11 from Andrew Randrianasulu randrik@mail.ru 2012-03-28 00:06:42 PDT --- Or http://cgit.freedesktop.org/mesa/mesa/commit/?id=1a69b50b3b441ce8f7a00af3a7f...
Namely calls to
draw_create_fragment_shader() and draw_bind_fragment_shader() , probably they should go into 300_state.c, r300_{create|bind}_fs_state ?
https://bugs.freedesktop.org/show_bug.cgi?id=47955
--- Comment #12 from Michel Dänzer michel@daenzer.net 2012-03-28 00:14:58 PDT --- (In reply to comment #7)
(I tried DRAW_NO_LLVM=1 - bug was still there).
FWIW, that's not a recognized environment variable. You probably meant DRAW_USE_LLVM=0.
https://bugs.freedesktop.org/show_bug.cgi?id=47955
--- Comment #13 from Andrew Randrianasulu randrik@mail.ru 2012-03-28 11:04:52 PDT --- (In reply to comment #12)
(In reply to comment #7)
(I tried DRAW_NO_LLVM=1 - bug was still there).
FWIW, that's not a recognized environment variable. You probably meant DRAW_USE_LLVM=0.
Yes, sorry. Tried twice with DRAW_USE_LLVM=0 - bug still here. I'll try to patch driver with my idea above and see if it will fix this bug ...
https://bugs.freedesktop.org/show_bug.cgi?id=47955
--- Comment #14 from Andrew Randrianasulu randrik@mail.ru 2012-03-28 11:45:44 PDT --- (In reply to comment #13)
(In reply to comment #12)
(In reply to comment #7)
(I tried DRAW_NO_LLVM=1 - bug was still there).
FWIW, that's not a recognized environment variable. You probably meant DRAW_USE_LLVM=0.
Yes, sorry. Tried twice with DRAW_USE_LLVM=0 - bug still here. I'll try to patch driver with my idea above and see if it will fix this bug ...
Unfortunately, it was not as simple as copy/pasting code ... no patch from me :(
https://bugs.freedesktop.org/show_bug.cgi?id=47955
--- Comment #15 from Andrew Randrianasulu randrik@mail.ru 2012-03-29 20:54:13 PDT --- .. and spriteblast mesa demo surely don't work correctly here. (I see something remotely like _giant_ sprites flashing on screen)
https://bugs.freedesktop.org/show_bug.cgi?id=47955
--- Comment #16 from Marek Olšák maraeo@gmail.com 2012-03-30 05:41:30 PDT --- Is this bug present in Mesa 8.0 and if yes, is it present in 7.11 as well?
https://bugs.freedesktop.org/show_bug.cgi?id=47955
--- Comment #17 from Andrew Randrianasulu randrik@mail.ru 2012-03-30 09:38:25 PDT --- (In reply to comment #16)
Is this bug present in Mesa 8.0 and if yes, is it present in 7.11 as well?
yes, at minimum in 8.0 and 7.11 git _branches_. With 7.11 it was a bit unstable - but bug still around, both for celestia and pointblast/spriteblast mesa demos.
https://bugs.freedesktop.org/show_bug.cgi?id=47955
--- Comment #18 from Andrew Randrianasulu randrik@mail.ru 2012-04-04 06:06:20 PDT --- Bug still here with mesa commit 34e53adc51ade8d53d74b6ae35bec90f1a6b9b29 ("r600g: inline r600_upload_index_buffer")
https://bugs.freedesktop.org/show_bug.cgi?id=47955
--- Comment #19 from Marek Olšák maraeo@gmail.com 2012-04-04 14:01:00 PDT --- I know. The vertex shader point size output is broken on SWTCL chipsets (piglit/glsl-vs-point-size fails randomly). I haven't been able to find the cause yet.
https://bugs.freedesktop.org/show_bug.cgi?id=47955
GitLab Migration User gitlab-migration@fdo.invalid changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution|--- |MOVED
--- Comment #20 from GitLab Migration User gitlab-migration@fdo.invalid --- -- GitLab Migration Automatic Message --
This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.
You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/mesa/mesa/issues/341.
dri-devel@lists.freedesktop.org