[Bug 1247607] Re: Libdrm compiled with gcc 4.8 makes card hang on resume from s2disk
Chris Halse Rogers
chris at cooperteam.net
Tue Dec 17 08:14:05 UTC 2013
Hello Ronald, or anyone else affected,
Accepted libdrm into precise-proposed. The package will build now and be
available at
http://launchpad.net/ubuntu/+source/libdrm/2.4.46-1ubuntu0.0.0.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 add a comment to this bug,
mentioning the version of the package you tested, and change the tag
from verification-needed to verification-done. If it does not fix the
bug for you, please add a comment stating that, and 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!
** Tags removed: verification-done
** Tags added: verification-needed
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to libdrm in Ubuntu.
https://bugs.launchpad.net/bugs/1247607
Title:
Libdrm compiled with gcc 4.8 makes card hang on resume from s2disk
Status in The GNU Compiler Collection:
New
Status in Accelerated Xorg driver for nVidia cards:
Fix Released
Status in “libdrm” package in Ubuntu:
Fix Released
Status in “libdrm” source package in Saucy:
Fix Released
Bug description:
[Impact]
* Relocations on nv04-nv4f are completely broken, any kind of memory stress will result in userspace failure.
[Test Case]
* Suspend on a system with an affected nvidia card.
* Resume should complete without any errors in FIFO.
* Other test is to run max-texture-size from piglit, system should survive.
* For m-a same change: confirm libdrm-dev:amd64 and libdrm-dev:i386 coinstall.
[Regression Potential]
* Original bug report was caused by undefined behavior in gcc:
- *push->cur++ = pushbuf_krel(push)
- pushbuf_krel uses (push->cur - push->bgn) to calculate offset.
- It's undefined whether push->cur is incremented before calling pushbuf_krel or not.
- New gcc changed the order, causing the bug.
- Fixed by calling push->cur++ in a separate statement.
* Bug reports will be watched for any new problems that may pop up.
[Original bug report]
My initial bugreport was here: https://bugs.freedesktop.org/show_bug.cgi?id=71116
- Recompiling libdrm with gcc 4.7 fixed the bug.
Upstream GCC mail thread here: http://gcc.gnu.org/ml/gcc-
help/2013-07/msg00103.html
This was fixed thanks to Emil Velikov from the nouveau project.
To manage notifications about this bug go to:
https://bugs.launchpad.net/gcc/+bug/1247607/+subscriptions
More information about the foundations-bugs
mailing list