Comment 3 for bug 164589

Revision history for this message
David Anes (kraptor) wrote : Re: Occasional screen-wide "blink" when using compiz

Same here with nvidia 7700 in an Asus A8JS.

When this starts, the nvidia driver notify this (or something similar) to dmesg:
[ 1208.288000] NVRM: Xid (0001:00): 6, PE0000 022c 00001800 0000f30c 00e7e7e7 00000001
[ 1208.296000] NVRM: Xid (0001:00): 30, L1 -> L0

What I've found so far:
* When the blink starts, restarting GDM fixes it, sometimes.
* Sometimes the screen freezes for 30 secs, and then the computer comes back. While frozen, the computer is hard-locked, so trying to ssh into it is impossible.
* If the computer returns from the freeze, you get the blinks.
* If yoy have the blinks, switching to a virtual terminal (Ctrl+Alt+F1) and then back to X, the screen is black, althout the mouse works as expected (the mouse pointer changes when it is over a window border, or a tex input, even you can move windows... althougt you can't see where they are).
* If you have another monitor plugged in using Twinview, the blinks NEVER happen.
* If you do not use the Intel Pro/Wireless 3495, the blinks NEVER happen. Both the IPW and the nvidia share the same IRQ, maybe is related to that?
* There are ALWAYS 30 seconds between blinks.
* Seems related to the OpenGL implementation. When the blinks start, executing:

 $ while true; do glxinfo > /dev/null; sleep 10; done

 seems to fix it. The sleep must be < 30 secs or the blink happen.

This makes me guess (as an experienced programmer) that the nvidia drivers have some timer (30 secs?) to deactivate/switch to a special mode (maybe to low-power consumption?) in the graphics card (this could explain why with twinview does not happen, seems that the code is not executed or can't switch to low-consumption mode).