Update Precise to mesa 8.0.4 (bugfix micro-release)

Bug #1019444 reported by Bryce Harrington
22
This bug affects 3 people
Affects Status Importance Assigned to Milestone
mesa (Ubuntu)
Fix Released
Wishlist
Bryce Harrington
Precise
Fix Released
Wishlist
Bryce Harrington

Bug Description

[Impact]
Fixes graphics corruption, application crashes, and xserver crashes across a wide array of hardware. Several of these issues have been reported against mesa. Others are likely affecting users but they don't realize it's mesa at fault so we haven't seen their bug reports.

The release notes for 8.0.3 (http://www.mesa3d.org/relnotes-8.0.3.html) indicates it contains over 20 bug fixes. Some of those are fixes to make tests pass or fix build issues and may or may not be actually relevant to end users. At least two bugs (#952896 and #988343) reported in Launchpad. Others fix corruption issues and xserver crashes seen while running games, memory leaks, and swrast problems.

Of particular note, this includes fixes for GPU hangs in 3D functionality. We've had numerous reports of Intel hangs that are difficult for users to reliably reproduce, and it's my hope these fixes will help alleviate some of those hangs.

8.0.4 fixes 8 more bugs on top of that (http://upstream-tracker.org/changelogs/mesa/8.0.4/changelog.html).

[Fix]
8.0.3 was uploaded to Quantal prior to Alpha-2. 8.0.4 was also added to Quantal and was in the archive for 4 days prior to us moving to the 9.0 branch. This proposal is targeting the 8.0.4-0ubuntu1 package we used in Quantal for Precise.

[Test Case]
See the individually mentioned bugs for test cases of the specific bugs.

For general validation of the point update of mesa, the piglit test suite can be used.

1. Install prerequisites:
     sudo apt-get --yes install cmake g++ mesa-common-dev libgl1-mesa-dev \
        libtiff4-dev zlib1g-dev libpng12-dev python-numpy \
        freeglut3-dev x11proto-gl-dev libxrender-dev
2. Checkout the piglit test suite from upstream
     git clone git://anongit.freedesktop.org/git/piglit
     cd piglit; cmake . ; make
3. DISPLAY=:0 piglit-run.py tests/all.tests mesa802.results
4. Install mesa 8.0.4
5. DISPLAY=:0 piglit-run.py tests/all.tests mesa804.results
6. piglit-summary-html.py summary/compare mesa802.results mesa804.results

The tests take several hours to run.

Note: Piglit is not a comprehensive test suite and cannot guarantee that there are no regressions. However, it is being actively maintained and updated with new tests by the driver maintainers as they add features and fix bugs in mesa, so should have decent coverage for recently made code changes (which is where regressions are more likely to live).

[Regression Potential]
A/B testing was done on the three major open source drivers. This testing found that the new version did not cause regressions, and actually a number of tests passed that had failed or been skipped in 8.0.2. Results are posted at:

  http://people.canonical.com/~bryce/mesa804-piglit/

mesa provides 3D acceleration functionality for all of the open source video drivers. Thus, the types of regressions to watch for with this change are:

  * X.org crashes, freezes, or errors
  * Graphical corruption when using compositing desktops
  * Crashes, graphical corruption or other failures in 3D applications and screensavers
  * Performance regressions in 3D functionality, measured by dropped FPS rates in unity or 3D games

For such bugs, the diagnostic process would be to downgrade mesa back to 8.0.2 (without any other system changes), log out and back in, and verify the problem as not reproducible.

CVE References

Bryce Harrington (bryce)
Changed in mesa (Ubuntu):
assignee: nobody → Bryce Harrington (bryce)
importance: Undecided → Wishlist
status: New → In Progress
Bryce Harrington (bryce)
description: updated
Bryce Harrington (bryce)
description: updated
Bryce Harrington (bryce)
description: updated
Bryce Harrington (bryce)
tags: added: precise
Bryce Harrington (bryce)
summary: - Update Precise to mesa 8.0.3 (bugfix release)
+ Update Precise to mesa 8.0.3 (bugfix micro-release)
Bryce Harrington (bryce)
Changed in mesa (Ubuntu Precise):
assignee: nobody → Bryce Harrington (bryce)
importance: Undecided → Wishlist
status: New → In Progress
Changed in mesa (Ubuntu):
status: In Progress → Fix Released
Bryce Harrington (bryce)
summary: - Update Precise to mesa 8.0.3 (bugfix micro-release)
+ Update Precise to mesa 8.0.4 (bugfix micro-release)
Bryce Harrington (bryce)
description: updated
Revision history for this message
Chris Halse Rogers (raof) wrote : Please test proposed package

Hello Bryce, or anyone else affected,

Accepted mesa into precise-proposed. The package will build now and be available at http://launchpad.net/ubuntu/+source/mesa/8.0.4-0ubuntu0.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please change the bug tag from verification-needed to verification-done. If it does not, change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in mesa (Ubuntu Precise):
status: In Progress → Fix Committed
tags: added: verification-needed
Revision history for this message
Timo Jyrinki (timo-jyrinki) wrote :

Everything seem to run smoothly one old Intel GM965 (GMA X3100) machine, Sandy-Bridge machine and Radeon HD 4670 machine. Not sure if more piglit results were wanted for verification-done, but I let the old machine run piglit tests on 8.0.2 vs 8.0.4:

http://people.canonical.com/~tjyrinki/mesa/802-804/compare/

Do note though that I needed to kill a couple of tests on both that seemed to either take literally forever (not even hours enough) or didn't seem to do anything. Also 8.0.2 was run on Unity while 8.0.4 on metacity while trying to preserve the 2GB RAM which seemed to swap completely over in some texture test. Nevertheless, the results look pretty good with amount of passed tests going from 6430 to 6437 with two theoretical regressions (not sure if I could reproduce those but running the tests takes all day) and one warning that was probably caused by metacity.

Revision history for this message
Bryce Harrington (bryce) wrote :

Thanks; I've also done testing on intel and nouveau but haven't studied the results yet. Working on getting an -ati system to run the tests on as well.

On Intel, yes there are a couple spots where the test hangs so you have to give it a ^C to continue. On my nouveau box, under 8.0.2 I triggered a kernel OOPS (#1047710); under 8.0.4 it GPU locked instead (still bad, but less bad than an OOPS!)

Theoretically if not for those problems the tests should take about 2 hrs to run.

Revision history for this message
Bryce Harrington (bryce) wrote :

The -ati box has turned out to be DOA due to a bad motherboard, so I've been unsuccessful getting tests on that.

However, I've posted the nouveau and intel tests here:

  http://people.canonical.com/~bryce/mesa804-piglit/

Note this set of runs uses a newer piglit checkout than my previous runs against mesa 8.0.3.

The Intel results look good, with a number of passed tests increasing by +10 from 6463/6618 to 6473/6618. However, note that there are four tests which regress (see at http://people.canonical.com/~bryce/mesa804-piglit/intel/regressions.html). I'm not certain what to make of that, it's not clear why they failed. Maybe these are unimportant, but I'll follow up on them.

The nouveau results look even better, at +705 passing from 478 to 1183, however note that the low initial number is due to one of the earlier tests triggering a kernel oops (bug #1047710); with the newer mesa, that bug doesn't get tripped but a later test trips a GPU lockup (bug #1050035). So we can say that mesa 8.0.4 improves things significantly, but bugs remain.

description: updated
Revision history for this message
Jamie Strandboge (jdstrand) wrote :

There is currently an open CVE on 12.04 that the security team hopes to address soon. Specifically:
http://people.canonical.com/~ubuntu-security/cve/2012/CVE-2012-2864.html

I looked at the diff for this -proposed update and it does not contain the identified fix for the issue:
http://cgit.freedesktop.org/mesa/mesa/commit/src/glsl/link_uniforms.cpp?id=ff996cafce511dd8a6c4e066e409c23e147a670c

Can someone verify and reupload to -proposed with this fix? Thanks!

Revision history for this message
Scott Kitterman (kitterman) wrote :

<ScottK> mdeslaur: Would it make sense to copy the mesa in precise-proposed to -updates and you base off of that? Except for your comment about the security issue, it's otherwise ready to release.
<mdeslaur> ScottK: huh? bryce said there are issues with the package in -proposed
<ScottK> Hmm.
<ScottK> All the bugs are marked verified.
<mdeslaur> ScottK: well, if that's the case, it should get pushed to -updates
<ScottK> bryce: Should I remove mesa from precise-proposed so it doesn't get released by accident?
-*- ScottK waits for bryce.
<bryce> ScottK, there are no known user issues. The problem is that a couple test cases changed behavior. According to Intel those are test suite issues not indications of user affecting problems
<ScottK> So you'd recommend to release it?
<bryce> ScottK, I'd have no problem releasing it. It works fine on the hardware, aside from the piglit irregularities (which would be hard to track down)

Revision history for this message
Scott Kitterman (kitterman) wrote : Update Released

The verification of this Stable Release Update has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regresssions.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package mesa - 8.0.4-0ubuntu0.1

---------------
mesa (8.0.4-0ubuntu0.1) precise-proposed; urgency=low

  * New upstream stable release. (LP: #1019444)
    + Fixes crash in intel_miptree_release()
      (LP: #952896)
    + Fixes slow WebGL in firefox
      (LP: #988343)

  [ Robert Hooker ]
  * Drop 118_fix_rendering_from_textures.patch and
    117_intel_fix_hiz_null_dereference.patch, both included upstream.
  * Refresh patches.

  [ Bryce Harrington ]
  * Add 117_nullptr_check_in_query_version.patch: Fix null pointer
    deref in QueryVersion() during login.
    (LP: #968284)
  * Add 118_glsl_initialize_samplers.patch: Initialize samplers to 0, as
    required by the spec. Fixes rendering corruption in MapsGL labels.
    Cherrypick from mesa master.
    (LP: #981883)
 -- Bryce Harrington <email address hidden> Fri, 07 Sep 2012 13:59:12 -0700

Changed in mesa (Ubuntu Precise):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.