Bug 94280 - Regression related to mesa/readpix
Summary: Regression related to mesa/readpix
Status: RESOLVED FIXED
Alias: None
Product: Mesa
Classification: Unclassified
Component: Mesa core (show other bugs)
Version: git
Hardware: Other All
: medium normal
Assignee: mesa-dev
QA Contact: mesa-dev
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-02-24 16:43 UTC by Ken Martin
Modified: 2016-02-24 16:44 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments
apitrace (244.40 KB, text/plain)
2016-02-24 16:44 UTC, Ken Martin
Details

Description Ken Martin 2016-02-24 16:43:00 UTC
It appears there was a regression related to recent changes in mesa/readpix. It could be that the changes exposed something bad in our code, but it works everywhere else so ...

Specifically it happened with 

Last week this test started failing on hythloth's nightly Mesa builds
(along with a few other tests):

* OpenGL2: https://open.cdash.org/viewTest.php?onlyfailed&buildid=4229706
           https://open.cdash.org/testDetails.php?test=418931875&build=4229706

* OpenGL1: https://open.cdash.org/viewTest.php?onlyfailed&buildid=4230126
           https://open.cdash.org/testDetails.php?test=418952240&build=4230126

For now I've checked out a mesa that still works and stopped updating.

The problem bisects to:

 mesa/readpix: Clip ReadPixels() area to the ReadBuffer's
 https://cgit.freedesktop.org/mesa/mesa/commit/?id=605832736a6d9427ad894d403cceeb74a5b18dc1

and still occurs after some related follow-up changes to Mesa:

 mesa/readpix: Don't clip in _mesa_readpixels()
 https://cgit.freedesktop.org/mesa/mesa/commit/?id=b89a8a15c240418d1859947b5114993ecdf424fb

 mesa/readpix: Dedent former _mesa_readpixels() if block
 https://cgit.freedesktop.org/mesa/mesa/commit/?id=c624241ef47c3a6ea2d1177969328bd4547e45a2

Valgrind reports that vtkImageDifference encounters uninitialized memory
after the change to Mesa but not before.  That looks consistent with the
messy corner of the test image seen in the above links.  Mesa is no longer
populating the full image with data.

I'll post an apitrace file run with an old mesa that hopefully will show the problem for you should you not want to build VTK yourself.
Comment 1 Brian Paul 2016-02-24 16:44:33 UTC
Should already be fixed with Mesa commit 83b589301f4a150f4b1b13fd3ffd9f6d98ee6546 from an hour ago.

Closing this as fixed.  Please re-open if you still have a problem after updating Mesa.
Comment 2 Ken Martin 2016-02-24 16:44:58 UTC
Created attachment 121950 [details]
apitrace

apitrace file for the test that is exposing the problem. The test renders four times in a small window, reading the pixels after each render. Then pastes the images together into a larger image. See the links in the bug report for the failing versus valid images.


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.