[regression] Unity launcher on-screen corruption on resume from suspend with nVidia proprietary driver
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OEM Priority Project |
Fix Released
|
High
|
James M. Leddy | ||
Oneiric |
Won't Fix
|
High
|
James M. Leddy | ||
Precise |
Fix Released
|
Medium
|
James M. Leddy | ||
Unity |
Fix Released
|
High
|
Tim Penhey | ||
6.0 |
Fix Released
|
High
|
Daniel van Vugt | ||
Unity Distro Priority |
Fix Released
|
Undecided
|
Unassigned | ||
unity (Ubuntu) |
Fix Released
|
High
|
Marco Trevisan (Treviño) | ||
Oneiric |
Won't Fix
|
Undecided
|
Marco Trevisan (Treviño) | ||
Precise |
Fix Released
|
High
|
Marco Trevisan (Treviño) |
Bug Description
[Impact]
This bug basically makes NVidia machines unusable after suspend. This is causing problems for users and OEMs that want to use 11.10 alike.
[Development Fix]
https:/
[Test Case]
.
To reproduce:
1) Suspend
2) Resume
2a) login, if necessary. Note that the login screen (lightdm) displays properly
3) Notice the corrupted launcher
4) Mouse over the launcher; the launcher redraws and the corruption goes away
[Regression Potential]
Low. We have tested the fix in the development version that we're planning on releasing in April 26th and have found no problems.
With the big diff, the regression potential might be a bit bigger for precise.
== Original Report ==
The unity launcher is reliably corrupted upon resume from suspend with some (all?) NVidia hardware with the proprietary NVidia driver. All other visual elements seem to draw correctly, it's just the unity launcher that has this problem. The launcher looks fine after it redraws (for example, if you mouse over it).
The problem is not reproducible on Intel or AMD graphics hardware, and I'm told (by Ted Gould) that it doesn't affect the nouveau driver. I have not tested the nouveau driver myself.
This problem been reported several times in the comments of bug 676166, I'm filing this separate bug for clarity since 676166 is overloaded.
To reproduce:
1) Suspend
2) Resume
2a) login, if necessary. Note that the login screen (lightdm) displays properly
3) Notice the corrupted launcher
4) Mouse over the launcher; the launcher redraws and the corruption goes away
The problem affects 11.10, and is not fixed by upgrading to more recent unity, compiz, or nvidia drivers from oneiric-updates or even the most recent SRU candidates not yet in oneiric-proposed. Currently I have the following installed and the problem still exists:
ii nvidia-common 1:0.2.35.1 Find obsolete NVIDIA drivers
ii nvidia-current 280.13-0ubuntu6 NVIDIA binary Xorg driver, kernel module and VDPAU library
ii nvidia-
ii nvidia-settings 280.13-0ubuntu2.1 Tool of configuring the NVIDIA graphics driver
ii nvidia-
Unity SRU candidate (not yet in -proposed):
ii unity 4.28.0-
Compiz SRU candidate (not yet in -proposed):
ii compiz 1:0.9.6+
ii compiz-core 1:0.9.6+
Hardware is a MacbookPro 3,1 w/ NVidia 8600M GT. I'm using the amd64 build of 11.10.
lspci -vvnn output for graphics card:
01:00.0 VGA compatible controller [0300]: nVidia Corporation G84 [GeForce 8600M GT] [10de:0407] (rev a1) (prog-if 00 [VGA controller])
Subsystem: Apple Computer Inc. Device [106b:00a0]
Physical Slot: 1
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 0
Interrupt: pin A routed to IRQ 16
Region 0: Memory at d2000000 (32-bit, non-prefetchable) [size=16M]
Region 1: Memory at c0000000 (64-bit, prefetchable) [size=256M]
Region 3: Memory at d0000000 (64-bit, non-prefetchable) [size=32M]
Region 5: I/O ports at 5000 [size=128]
[virtual] Expansion ROM at d3000000 [disabled] [size=128K]
Capabilities: [60] Power Management version 2
Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-
Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
Capabilities: [68] MSI: Enable- Count=1/1 Maskable- 64bit+
Address: 0000000000000000 Data: 0000
Capabilities: [78] Express (v1) Endpoint, MSI 00
DevCap: MaxPayload 128 bytes, PhantFunc 0, Latency L0s <512ns, L1 <4us
ExtTag+ AttnBtn- AttnInd- PwrInd- RBE+ FLReset-
DevCtl: Report errors: Correctable- Non-Fatal- Fatal- Unsupported-
RlxdOrd+ ExtTag+ PhantFunc- AuxPwr- NoSnoop+
MaxPayload 128 bytes, MaxReadReq 512 bytes
DevSta: CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr- TransPend-
LnkCap: Port #0, Speed 2.5GT/s, Width x16, ASPM L0s L1, Latency L0 <512ns, L1 <4us
ClockPM- Surprise- LLActRep- BwNot-
LnkCtl: ASPM L0s L1 Enabled; RCB 128 bytes Disabled- Retrain- CommClk+
ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
LnkSta: Speed 2.5GT/s, Width x16, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
Capabilities: [100 v1] Virtual Channel
Caps: LPEVC=0 RefClk=100ns PATEntryBits=1
Arb: Fixed- WRR32- WRR64- WRR128-
Ctrl: ArbSelect=Fixed
Status: InProgress-
VC0: Caps: PATOffset=00 MaxTimeSlots=1 RejSnoopTrans-
Arb: Fixed- WRR32- WRR64- WRR128- TWRR128- WRR256-
Ctrl: Enable+ ID=0 ArbSelect=Fixed TC/VC=01
Status: NegoPending- InProgress-
Capabilities: [128 v1] Power Budgeting <?>
Capabilities: [600 v1] Vendor Specific Information: ID=0001 Rev=1 Len=024 <?>
Kernel driver in use: nvidia
Kernel modules: nvidia_current, nvidia_
Related branches
- Tim Penhey (community): Approve
- Marco Trevisan (Treviño): Needs Information
- Gord Allott: Pending requested
-
Diff: 83 lines (+25/-0)4 files modifiedmanual-tests/NvResumeFromSuspend.txt (+11/-0)
plugins/unityshell/src/LauncherController.cpp (+6/-0)
plugins/unityshell/src/UScreen.cpp (+3/-0)
plugins/unityshell/src/UScreen.h (+5/-0)
- Gord Allott (community): Approve
- Unity Team: Pending requested
-
Diff: 86 lines (+51/-0)2 files modifiedmanual-tests/NvResumeFromSuspend.txt (+11/-0)
plugins/unityshell/src/LauncherController.cpp (+40/-0)
- Łukasz Zemczak: Approve
- Marco Trevisan (Treviño): Approve
- Daniel van Vugt: Approve
-
Diff: 784 lines (+353/-117)12 files modifiedmanual-tests/Dash.txt (+15/-0)
manual-tests/Launcher.txt (+15/-0)
manual-tests/Panel.txt (+17/-0)
manual-tests/WindowManagement.txt (+20/-0)
plugins/unityshell/src/AbstractLauncherIcon.h (+1/-0)
plugins/unityshell/src/Launcher.cpp (+11/-0)
plugins/unityshell/src/Launcher.h (+4/-0)
plugins/unityshell/src/LauncherIcon.cpp (+3/-0)
plugins/unityshell/src/PanelController.cpp (+15/-0)
plugins/unityshell/src/PanelController.h (+1/-0)
plugins/unityshell/src/unityshell.cpp (+239/-110)
plugins/unityshell/src/unityshell.h (+12/-7)
Changed in unity (Ubuntu): | |
importance: | Undecided → Medium |
Changed in unity: | |
importance: | Undecided → Medium |
Changed in unity (Ubuntu): | |
status: | New → Confirmed |
Changed in unity: | |
status: | New → Confirmed |
Changed in nvidia-graphics-drivers (Ubuntu): | |
importance: | Undecided → Medium |
Changed in oem-priority: | |
importance: | Undecided → Medium |
Changed in unity-distro-priority: | |
status: | New → Fix Committed |
no longer affects: | nvidia-graphics-drivers (Ubuntu) |
Changed in unity: | |
status: | Confirmed → Triaged |
Changed in unity (Ubuntu): | |
status: | Confirmed → Triaged |
tags: | added: distro-priority |
Changed in unity: | |
status: | Triaged → In Progress |
assignee: | nobody → Jason Smith (jassmith) |
Changed in unity (Ubuntu): | |
status: | Triaged → In Progress |
Changed in unity: | |
milestone: | none → 5.8.0 |
tags: | added: rls-p-tracking |
Changed in oem-priority: | |
status: | Confirmed → In Progress |
no longer affects: | oem-priority/oneiric |
Changed in unity: | |
importance: | Medium → High |
Changed in unity (Ubuntu): | |
importance: | Medium → High |
assignee: | nobody → Jason Smith (jassmith) |
Changed in unity: | |
milestone: | 5.8.0 → 5.10.0 |
tags: | added: blocks-hwcert-enablement |
Changed in unity (Ubuntu Oneiric): | |
status: | New → In Progress |
Changed in oem-priority: | |
status: | In Progress → Fix Committed |
Changed in unity: | |
status: | In Progress → Fix Committed |
Changed in unity (Ubuntu Precise): | |
status: | In Progress → Fix Committed |
Changed in unity (Ubuntu Oneiric): | |
status: | In Progress → Confirmed |
status: | Confirmed → Fix Committed |
Changed in unity (Ubuntu Oneiric): | |
status: | Fix Committed → Confirmed |
Changed in unity: | |
status: | Fix Committed → Fix Released |
Changed in oem-priority: | |
assignee: | Chris Van Hoof (vanhoof) → James M. Leddy (jm-leddy) |
Changed in unity-distro-priority: | |
status: | Fix Committed → Fix Released |
Changed in unity (Ubuntu Oneiric): | |
assignee: | nobody → Marco Trevisan (Treviño) (3v1n0) |
Changed in unity (Ubuntu Precise): | |
assignee: | nobody → Marco Trevisan (Treviño) (3v1n0) |
Changed in unity (Ubuntu): | |
assignee: | nobody → Marco Trevisan (Treviño) (3v1n0) |
Changed in unity: | |
assignee: | nobody → Marco Trevisan (Treviño) (3v1n0) |
status: | Confirmed → In Progress |
Changed in unity: | |
milestone: | 6.2 → 5.16.0 |
Changed in unity: | |
assignee: | Marco Trevisan (Treviño) (3v1n0) → Tim Penhey (thumper) |
Changed in oem-priority: | |
status: | In Progress → Fix Committed |
description: | updated |
Changed in unity: | |
status: | Fix Committed → Fix Released |
Changed in oem-priority: | |
status: | Fix Committed → Fix Released |
Changed in unity (Ubuntu): | |
status: | Confirmed → Fix Committed |
Changed in unity (Ubuntu): | |
status: | Fix Committed → Fix Released |
no longer affects: | wily (Ubuntu) |
no longer affects: | wily (Ubuntu Oneiric) |
no longer affects: | wily (Ubuntu Precise) |
Status changed to 'Confirmed' because the bug affects multiple users.