<html>
<head>
<base href="https://bugs.freedesktop.org/" />
</head>
<body><span class="vcard"><a class="email" href="mailto:lemody@gmail.com" title="Tapani Pälli <lemody@gmail.com>"> <span class="fn">Tapani Pälli</span></a>
</span> changed
<a class="bz_bug_link
bz_status_RESOLVED bz_closed"
title="RESOLVED FIXED - [HSW,BDW,SKL][GLES 3.1 CTS] ES31-CTS.sepshaderobjs.StateInteraction fails"
href="https://bugs.freedesktop.org/show_bug.cgi?id=93319">bug 93319</a>
<br>
<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>What</th>
<th>Removed</th>
<th>Added</th>
</tr>
<tr>
<td style="text-align:right;">Status</td>
<td>ASSIGNED
</td>
<td>RESOLVED
</td>
</tr>
<tr>
<td style="text-align:right;">Resolution</td>
<td>---
</td>
<td>FIXED
</td>
</tr></table>
<p>
<div>
<b><a class="bz_bug_link
bz_status_RESOLVED bz_closed"
title="RESOLVED FIXED - [HSW,BDW,SKL][GLES 3.1 CTS] ES31-CTS.sepshaderobjs.StateInteraction fails"
href="https://bugs.freedesktop.org/show_bug.cgi?id=93319#c3">Comment # 3</a>
on <a class="bz_bug_link
bz_status_RESOLVED bz_closed"
title="RESOLVED FIXED - [HSW,BDW,SKL][GLES 3.1 CTS] ES31-CTS.sepshaderobjs.StateInteraction fails"
href="https://bugs.freedesktop.org/show_bug.cgi?id=93319">bug 93319</a>
from <span class="vcard"><a class="email" href="mailto:lemody@gmail.com" title="Tapani Pälli <lemody@gmail.com>"> <span class="fn">Tapani Pälli</span></a>
</span></b>
<pre>commit 11fc7ad62ef9aa4c9df71e4e001582f8017e7a81
Author: Timothy Arceri <<a href="mailto:timothy.arceri@collabora.com">timothy.arceri@collabora.com</a>>
Date: Wed Jan 6 12:40:12 2016 +1100
mesa: remove link validation that should be done elsewhere
Even if re-linking fails rendering shouldn't fail as the previous
succesfully linked program will still be available. It also shouldn't
be possible to have an unlinked program as part of the current rendering
state.
This fixes a subtest in:
ES31-CTS.sepshaderobjs.StateInteraction
This change should improve performance on CPU limited benchmarks as noted
in commit d6c6b186cf308f.
>From Section 7.3 (Program Objects) of the OpenGL 4.5 spec:
"If a program object that is active for any shader stage is re-linked
unsuccessfully, the link status will be set to FALSE, but any existing
executables and associated state will remain part of the current
rendering
state until a subsequent call to UseProgram, UseProgramStages, or
BindProgramPipeline removes them from use. If such a program is
attached to
any program pipeline object, the existing executables and associated
state
will remain part of the program pipeline object until a subsequent call
to
UseProgramStages removes them from use. An unsuccessfully linked
program may
not be made part of the current rendering state by UseProgram or added
to
program pipeline objects by UseProgramStages until it is successfully
re-linked."
"void UseProgram(uint program);
...
An INVALID_OPERATION error is generated if program has not been linked,
or
was last linked unsuccessfully. The current rendering state is not
modified."
V2: apply the rule to both core and compat.
Cc: Tapani Pälli <<a href="mailto:tapani.palli@intel.com">tapani.palli@intel.com</a>>
Cc: Brian Paul <<a href="mailto:brianp@vmware.com">brianp@vmware.com</a>>
Reviewed-by: Ian Romanick <<a href="mailto:ian.d.romanick@intel.com">ian.d.romanick@intel.com</a>></pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the QA Contact for the bug.</li>
</ul>
</body>
</html>