Created attachment 123265 [details]
Visual corrution example in MS pdf Reader
system architecture: x86-64
kernel: Linux 4.4.0-21-generic #37-Ubuntu SMP Mon Apr 18 18:33:37 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
OS: Ubuntu Linux 16.04
VMware Workstation: 12.1.0
Guest OS: Windows 8.1 64-bit
Bug detailed description:
I run Windows 8.1 VM under Linux Workstation with enabled hardware graphics acceleration. Here are the options in vmx configuration file that enable 3D support:
mks.enable3d = "TRUE"
mks.use3dRenderer = "hardware"
mks.gl.allowBlacklistedDrivers = "TRUE"
svga.graphicsMemoryKB = "1048576"
I observe visual corruptions in Microsoft pdf Reader. When I open some pdf files using Microsoft pdf Reader there are black triangles on the page.
The issue reproducible only on BDW. System with HSW renders image correctly.
Moreover apitrace file captured from VM on BDW doesn't reproduces the issue on HSW while replaying.
See attached files for more details.
Created attachment 123266 [details]
glxinfo output on Linux host OS
Added glxinfo output
Created attachment 123317 [details]
Apitrace trace file that reproduces the issue.
apitrace file is attached
FTR, I also see the issues replaying the trace on SKL.
Created attachment 123939 [details]
Trace file from HSW
Attached trace file captured on HSW.
It doesn't reproduce visual issues on HSW, but on BDW it reproduces visual corruptions.
Please ignore previous trace file, Windows VM cashes rendered image and even on HSW previous trace file reproduces the issue.
A good example is call #55306 glDrawArrays(GL_TRIANGLE_STRIP,0,4),
This call draws a background of the pdf document page. On HSW is draws white rectangle however on BDW it draws only white triangle.
This draw call uses shader program #201 created in call #24247.
Most likely the issue not in the fragment shader. FS was modified to output always vec4(1.0, 1.0, 1.0, 1.0), and the glDrawArrays draws white triangle on BDW.
Most likely the issue is in vertex shader processing.
Haven't checked vertex data stored in buffers.
Looks like that this problem will be fixed in upcoming Mesa 12.0.0.
I've bisected commits between 11.2.0 and 12.0.0-rc3 and found that commit "i965: Clamp "Maximum VP Index" to 1 when gl_ViewportIndex isn't written."(e0e7280db0b03b08479ef9db681db186f80605e5) fixes this issue.
Emil, can we cherry-pick the commit mentioned in comment 5 to the 11.2 branch? It was marked for stable -- perhaps there was a problem picking it?
(In reply to Matt Turner from comment #6)
> Emil, can we cherry-pick the commit mentioned in comment 5 to the 11.2
> branch? It was marked for stable -- perhaps there was a problem picking it?
I failed in getting the commit into 11.2.x. Sorry for that. I suppose since the bug was resolved in 12.0 and 12.0+ are the only supported versions we'll mark this resolved.
Author: Kenneth Graunke <firstname.lastname@example.org>
Date: Sat May 7 17:30:02 2016 -0700
i965: Clamp "Maximum VP Index" to 1 when gl_ViewportIndex isn't written.