Bug 79016

Summary: [REGRESSION] "st/mesa: drop the lowering of quad strips to triangle strips"
Product: Mesa Reporter: Maarten Lankhorst <bugs>
Component: Mesa coreAssignee: mesa-dev
Status: RESOLVED NOTABUG QA Contact:
Severity: normal    
Priority: medium    
Version: 10.1   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:
Attachments: screenshot with commit reverted, appears to be identical to i915/llvmpipe/nouveau
commit generating warnings

Description Maarten Lankhorst 2014-05-21 12:43:42 UTC
Commit db722bdcab15717d80797323330b60fe3f61df5d (cherry picked to 10.1) breaks piglit test "bin/ext_transform_feedback-tessellation quad_strip flat_first" on radeon and nouveau.
Comment 1 Marek Olšák 2014-05-21 13:01:04 UTC
Yes, I know about that, but does it really break it? The status "warn" doesn't mean broken.

The commit also fixes other tests and it's just the correct thing to do.
Comment 2 Maarten Lankhorst 2014-05-21 14:27:36 UTC
Correction, meant e5f6b6d0feb9b9ad7132d5f236959ef088237347 as pointed out on irc.
Comment 3 Maarten Lankhorst 2014-05-21 14:31:49 UTC
Created attachment 99514 [details]
screenshot with commit reverted, appears to be identical to i915/llvmpipe/nouveau
Comment 4 Maarten Lankhorst 2014-05-21 14:32:40 UTC
Created attachment 99515 [details]
commit generating warnings
Comment 5 Marek Olšák 2014-05-21 15:52:03 UTC
If you add "-auto", what's the piglit result?
Comment 6 Maarten Lankhorst 2014-05-22 10:35:07 UTC
Probe at (48,66)
  Expected: 0.423529 0.011765 0.313726 0.501961
  Observed: 0.501961 0.125490 0.125490 0.501961
PIGLIT: {'result': 'warn' }
Comment 7 Marek Olšák 2014-05-22 13:22:10 UTC
"warn" is not a failure, like I said. I knew about this pass->warn change. It actually uncovers a potential issue with the hardware - or with the test. It depends on how you look at it.

From the test:

 * Note: some OpenGL implementations do not pass the "flat_first" and
 * "flat_last" tests when rendering quads or polygons.  That is, they
 * produce a tessellation which contains the correct vertices, but not
 * in the order required to preserve flat shaded colors.  This is
 * unlikely to cause problems for client programs, since client
 * programs that use new features like transform feedback are unlikely
 * to also use deprecated features like quads and polygons.  Also, it
 * is a matter of interpretation whether these tests are expected to
 * pass at all--after all, the spec does say that "the order of
 * tessellation within a primitive is undefined".  Accordingly, these
 * failures, should they occur, are flagged as warnings rather than
 * failures.

However, my Mesa commit which causes this test not to pass on nouveau, radeon, and probably other gallium drivers, and I did know about this, actually fixes real issues with flat shading and primitive restart and therefore cannot be reverted.

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.