Bug 44743 - Rendering artefacts with llvmpipe
Summary: Rendering artefacts with llvmpipe
Status: RESOLVED NOTABUG
Alias: None
Product: Mesa
Classification: Unclassified
Component: Mesa core (show other bugs)
Version: git
Hardware: x86 (IA32) Linux (All)
: medium normal
Assignee: mesa-dev
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-01-12 12:03 UTC by Vasily Khoruzhick
Modified: 2013-12-01 10:32 UTC (History)
2 users (show)

See Also:
i915 platform:
i915 features:


Attachments
screenshot with artefacts (615.65 KB, image/png)
2012-01-12 12:03 UTC, Vasily Khoruzhick
Details
cpuinfo (3.74 KB, text/plain)
2013-02-04 21:21 UTC, Vasily Khoruzhick
Details

Description Vasily Khoruzhick 2012-01-12 12:03:38 UTC
Created attachment 55523 [details]
screenshot with artefacts

See screenshot in attachment,

mesa is from git:
OpenGL renderer string: Gallium 0.4 on llvmpipe (LLVM 0x300)
OpenGL version string: 2.1 Mesa 8.0-devel (git-36ede89)

llvm is 3.0

configure flags:

 ./autogen.sh --prefix=/usr \
    --with-dri-driverdir=/usr/lib/xorg/modules/dri \
    --with-gallium-drivers=r300,r600,nouveau,swrast,i915 \
    --enable-gallium-egl --enable-shared-glapi --enable-gallium-llvm \
    --enable-glx-tls \
    --with-driver=dri \
    --enable-xcb \
    --disable-glut \
    --enable-gles1 \
    --enable-gles2 \
    --enable-egl \
    --enable-shared-dricore \
    --enable-texture-float
Comment 1 Jose Fonseca 2012-01-12 12:08:05 UTC
What application is this? http://foobillardplus.sourceforge.net/download.html ?

Could you try to obtain a apitrace w/ https://github.com/apitrace/apitrace ?
Comment 2 Stephane Marchesin 2012-01-12 12:08:19 UTC
Seems to be a bug in draw, it reproduces with i915g also, so probably affects all drivers which use draw.
Comment 3 Stephane Marchesin 2012-01-12 12:10:19 UTC
Also I can't repro locally (i915g or llvmpipe with llvm 2.8) and Vasily can (i915g or llvmpipe with llvm 3.0).
Comment 4 Jose Fonseca 2012-01-12 12:28:09 UTC
I've uploaded a trace to http://people.freedesktop.org/~jrfonseca/traces/foobillardplus.trace.xz
Comment 5 Jose Fonseca 2012-01-12 12:29:49 UTC
I couldn't reproduce the issue with LLVM 3.0 on x64 bits debian.

Which distro and architecture are you seeing this?
Comment 6 Vasily Khoruzhick 2012-01-12 12:37:06 UTC
ArchLinux, x86 (32 bits)
Comment 7 Jose Fonseca 2013-01-29 07:23:06 UTC
Does this still happen?

If so please provide /proc/cpuinfo, as it is possible that it is tied to your particular processor settings.
Comment 8 Vasily Khoruzhick 2013-02-04 21:20:31 UTC
Still happens with llvmpipe, but system has changed,
now it's Core i5-3320M and 64-bit OS (still Archlinux), earlier it was
Core 2 Duo T5500 with 32-bit OS
Comment 9 Vasily Khoruzhick 2013-02-04 21:21:03 UTC
Created attachment 74194 [details]
cpuinfo
Comment 10 Jose Fonseca 2013-02-05 06:38:50 UTC
(In reply to comment #9)
> Created attachment 74194 [details]
> cpuinfo

Thanks. Your processor has SSE4.1, which is what we test the most, so it can't be for lack of processor features.


Could you please take make an apitrace ( https://github.com/apitrace/apitrace ) of the corruption, to see if we can reproduce with that?


Also, please confirm that with the upgrade you're still using LLVM 3.0. If you have access to other LLVM versions, I'd recommend trying LLVM 3.1 to see if that makes any difference.
Comment 11 Vasily Khoruzhick 2013-02-05 07:05:29 UTC
(In reply to comment #10)
> (In reply to comment #9)
> > Created attachment 74194 [details]
> > cpuinfo
> 
> Thanks. Your processor has SSE4.1, which is what we test the most, so it
> can't be for lack of processor features.
> 
> 
> Could you please take make an apitrace (
> https://github.com/apitrace/apitrace ) of the corruption, to see if we can
> reproduce with that?
> 
> 
> Also, please confirm that with the upgrade you're still using LLVM 3.0. If
> you have access to other LLVM versions, I'd recommend trying LLVM 3.1 to see
> if that makes any difference.

I'm using Mesa 9.0.2 with LLVM 3.2
Comment 12 Vasily Khoruzhick 2013-02-05 07:14:26 UTC
Here's apitrace: https://www.dropbox.com/s/bfljhocswxfqtxc/foobillardplus.1.trace.bz2
Comment 13 Jose Fonseca 2013-02-05 12:04:11 UTC
I tried the trace here w/ NVIDIA GL driver and the rendering here looks just like your screenshot.

I though by artefacts you meant the countours in the balls, but I'm not sure anymore. Could you describe exactly what you believe to be artifacts?

Also, glretrace here shows many errors, both with NVIDIA or Mesa:

Mesa:

Mesa: User error: GL_INVALID_VALUE in glMaterial(invalid shininess: 1000.000000 out range [0, 128.000000])
38030: glDebugOutputCallback: High severity API error 0, GL_INVALID_VALUE in glMaterial(invalid shininess: 1000.000000 out range [0, 128.000000])
0 38030 glCallList(list = 1)

NVIDIA:

38030: glDebugOutputCallback: High severity API error 1281, GL_INVALID_VALUE error generated.
0 38030 glCallList(list = 1)
38030: warning: glGetError(glCallList) = GL_INVALID_VALUE


I suspect this may be an application bug... Maybe induced by something in Mesa drivers, but it looks like the drivers are rendering what they are being told..
Comment 14 Vasily Khoruzhick 2013-02-05 12:11:28 UTC
(In reply to comment #13)
> I tried the trace here w/ NVIDIA GL driver and the rendering here looks just
> like your screenshot.
> 
> I though by artefacts you meant the countours in the balls, but I'm not sure
> anymore. Could you describe exactly what you believe to be artifacts?

All balls are colored in wrong colors.
 
> Also, glretrace here shows many errors, both with NVIDIA or Mesa:
> 
> Mesa:
> 
> Mesa: User error: GL_INVALID_VALUE in glMaterial(invalid shininess:
> 1000.000000 out range [0, 128.000000])
> 38030: glDebugOutputCallback: High severity API error 0, GL_INVALID_VALUE in
> glMaterial(invalid shininess: 1000.000000 out range [0, 128.000000])
> 0 38030 glCallList(list = 1)
> 
> NVIDIA:
> 
> 38030: glDebugOutputCallback: High severity API error 1281, GL_INVALID_VALUE
> error generated.
> 0 38030 glCallList(list = 1)
> 38030: warning: glGetError(glCallList) = GL_INVALID_VALUE
> 
> 
> I suspect this may be an application bug... Maybe induced by something in
> Mesa drivers, but it looks like the drivers are rendering what they are
> being told..

I'm pretty sure that I had no such issue with i915 driver (on same machine with same Mesa version), but I have no machine with i915 hw anymore, so can't check. Anyway, foobillard++ on i965 Mesa driver (with Ivy Bridge hardware) has same issue, so probably it's an application bug.
Comment 15 Markus Koschany 2013-12-01 10:32:24 UTC
This is not a mesa bug and was resolved a long time ago by the developer of Foobillard++. You can choose different rendering options in the game menu.

Hit on ESC / Graphic / Reflections / Rendering and there on default (Version >= 3.42) or spheremap.


See also 
http://sourceforge.net/p/foobillardplus/bugs/10/


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.