Contribute
Register

NVDA(OpenGL): Channel timeout!

Status
Not open for further replies.
Flash causes the problem. It is caused by the current version of FlashPlayer (v...180). Solutions:
1. Chrome/YouTube
2. Safari/YouTube/HTML5 (Google Search)
3. Safari/YouTube/FlashPlayer (v...180)/Turn off Hardware Acceleration (Google Search)
4. Safari/YouTube/Uninstall Flash Player (Google Search)

Note: Downgrading does not work as older versions of FlashPlayer are blocked by OS X.
Advice: Do not update FlashPlayer (same as 4. above). Avoid using apps requiring FlashPlayer.

Toleda,

I tried what you said, using MacBookPro10,1 and SSDT for Ivy Bridge Power management. I disabled Hardware Acceleration for flash under Safari, so far, no crashes. Hopefully this works!! Thanks again!! :)
 
Toleda,

Flash is not the only thing changing the Power State of NVDA and causing the problem

To replicate and get a Channel timeout! and also the setPowetState change (this is causing the problem, im sure of it)
To replicate the Channel Timeout very fast - just make Preview full-screen and open a .pdf File, then
switch back / forth from the Fullscreen, give it a couple of clicks and if your system is running for an hour already
you will get the Channel Timeout hang.

and you will get this: > NVDA::setPowerState(0xffffff8011c5c800, 2 -> 1) timed out after 45425 ms

What I found out is:

-> 10.8.4 does not fix the problem
-> killing WindowServer does fix the problem sometime (since it also gets stuck)
-> killing Dock with -HUP does fix the problem sometimes (since it also gets stuck
 
and finally... how do i purge a hanging process on BSD system? Since sudo kill -9 -1 do work ;-) but the hanging processes are still running...
 
Toleda,

Going through "ps aux" I can clearly see that (WindowServer) is the 'dead' process hanging.
Any way to purge/restart? -HUP doesnt work, my log file spill out:

May 4 19:37:10 iamstillapc kernel[0]: NVDA(OpenGL): Channel timeout!
May 4 19:37:10 iamstillapc kernel[0]: NVDA(OpenGL): Channel exception! exception type = 0x1f = Fifo: MMU Error
May 4 19:37:30 iamstillapc kernel[0]: NVDA(OpenGL): Channel timeout!
May 4 19:37:30 iamstillapc kernel[0]: NVDA(OpenGL): Channel exception! exception type = 0x1f = Fifo: MMU Error

How can I restart a kext driver? Unload/Reload or whatever? I wasn't on BSD for ages... but any
process in paratheses is a dead one:

_windowserver 1674 0.0 0.0 0 0 ?? ?Es 7:27pm 0:00.00 (WindowServer)

and that is the only onw in my ps aux.
 
update:

>: sudo kextunload -p -b com.apple.NVDAResman !1759

Terminate for com.apple.NVDAResman failed - (libkern/kext) kext is in use or retained (cannot unload).
Check the system/kernel logs for error messages from the I/O Kit.

Hmmm... so. From my thinking is, that it should be possible to reload the kext responsible
for handling NVDA and restart it, purge instances of WindowServer and restart it as well.

Try to killing -9 -1 any of your users process and the gui nicely dies and kicks into login screen again (something
I want to achieve - but I need to restart/reload that kext)

Correct me if I am wrong - those are only assumptions, I dont really know **** about os x (yet)
 
UPDATE:

I just checked out my MBP Retina if I can replicate the same (running a dev 10.8.4 build) and the system.log gives
me plenty of **** complaints from WindowServer almost immediately when any kind of accelerated GL graphics is involved:

19:56:50 PolePro WindowServer[83]: CGXRegisterWindowWithSystemStatusBar: window 1e already registered

Where it gets interesting is when you try the go fullscreen back/forth in "Preview" when got a PDF opened:

ay 4 19:56:59 PolePro WindowServer[83]: CGXRegisterWindowWithSystemStatusBar: window 1e already registered
^[^[[B^[^[[A^[[HMay 4 19:57:57 PolePro Preview[198]: Unable to simultaneously satisfy constraints:
(
"<NSAutoresizingMaskLayoutConstraint:0x7fe3abcb05a0 h=-&- v=-&- H:|-(0)-[NSClipView:0x7fe3aca51c10] (Names: '|':NSScrollView:0x7fe3acabb7d0 )>",
"<NSAutoresizingMaskLayoutConstraint:0x7fe3abcb0600 h=-&- v=-&- H:[NSClipView:0x7fe3aca51c10]-(15)-| (Names: '|':NSScrollView:0x7fe3acabb7d0 )>",
"<NSAutoresizingMaskLayoutConstraint:0x7fe3abca1ac0 h=-&- v=-&- H:[NSScrollView:0x7fe3acabb7d0]-(0)-| (Names: '|':NSView:0x7fe3acad5750 )>",
"<NSAutoresizingMaskLayoutConstraint:0x7fe3abca1a50 h=-&- v=-&- H:|-(0)-[NSScrollView:0x7fe3acabb7d0] (Names: '|':NSView:0x7fe3acad5750 )>",
"<NSAutoresizingMaskLayoutConstraint:0x7fe3abca0e00 h=-&- v=-&- H:|-(0)-[NSView:0x7fe3acad5750] (Names: '|':NSView:0x7fe3b4673ce0 )>",
"<NSAutoresizingMaskLayoutConstraint:0x7fe3abca0ed0 h=-&- v=-&- H:[NSView:0x7fe3acad5750]-(0)-| (Names: '|':NSView:0x7fe3b4673ce0 )>",
"<NSLayoutConstraint:0x7fe3b431c7f0 H:[NSView:0x7fe3b4673ce0]-(0)-| (Names: '|':pVSidebarView:0x7fe3b4685010 )>",
"<NSLayoutConstraint:0x7fe3b431c760 H:|-(0)-[NSView:0x7fe3b4673ce0] (Names: '|':pVSidebarView:0x7fe3b4685010 )>",
"<NSAutoresizingMaskLayoutConstraint:0x7fe3b522f1f0 h=-&- v=-&- H:|-(0)-[PVSidebarView:0x7fe3b4685010] (Names: '|':NSView:0x7fe3b4680230 )>",
"<NSAutoresizingMaskLayoutConstraint:0x7fe3b522f250 h=-&- v=-&- H:[PVSidebarView:0x7fe3b4685010]-(0)-| (Names: '|':NSView:0x7fe3b4680230 )>",
"<NSAutoresizingMaskLayoutConstraint:0x7fe3abc9c240 h=--& v=--& H:[NSView:0x7fe3b4680230(0)]>"
)

Will attempt to recover by breaking constraint
<NSLayoutConstraint:0x7fe3b431c7f0 H:[NSView:0x7fe3b4673ce0]-(0)-| (Names: '|':pVSidebarView:0x7fe3b4685010 )>

Set the NSUserDefault NSConstraintBasedLayoutVisualizeMutuallyExclusiveConstraints to YES to have -[NSWindow visualizeConstraints:] automatically called when this happens. And/or, break on objc_exception_throw to catch this in the debugger.
May 4 19:57:59 PolePro WindowServer[83]: CGXSetWindowListTags: Invalid window 0x16fa
May 4 19:58:02 PolePro WindowServer[83]: CGXRegisterWindowWithSystemStatusBar: window 1e already registered
May 4 19:58:04 PolePro Preview[198]: Unable to simultaneously satisfy constraints:
(
"<NSAutoresizingMaskLayoutConstraint:0x7fe3abcb05a0 h=-&- v=-&- H:|-(0)-[NSClipView:0x7fe3aca51c10] (Names: '|':NSScrollView:0x7fe3acabb7d0 )>",
"<NSAutoresizingMaskLayoutConstraint:0x7fe3abcb0600 h=-&- v=-&- H:[NSClipView:0x7fe3aca51c10]-(15)-| (Names: '|':NSScrollView:0x7fe3acabb7d0 )>",
"<NSAutoresizingMaskLayoutConstraint:0x7fe3abca1ac0 h=-&- v=-&- H:[NSScrollView:0x7fe3acabb7d0]-(0)-| (Names: '|':NSView:0x7fe3acad5750 )>",
"<NSAutoresizingMaskLayoutConstraint:0x7fe3abca1a50 h=-&- v=-&- H:|-(0)-[NSScrollView:0x7fe3acabb7d0] (Names: '|':NSView:0x7fe3acad5750 )>",
"<NSAutoresizingMaskLayoutConstraint:0x7fe3abca0e00 h=-&- v=-&- H:|-(0)-[NSView:0x7fe3acad5750] (Names: '|':NSView:0x7fe3b4673ce0 )>",
"<NSAutoresizingMaskLayoutConstraint:0x7fe3abca0ed0 h=-&- v=-&- H:[NSView:0x7fe3acad5750]-(0)-| (Names: '|':NSView:0x7fe3b4673ce0 )>",
"<NSLayoutConstraint:0x7fe3b431c7f0 H:[NSView:0x7fe3b4673ce0]-(0)-| (Names: '|':pVSidebarView:0x7fe3b4685010 )>",
"<NSLayoutConstraint:0x7fe3b431c760 H:|-(0)-[NSView:0x7fe3b4673ce0] (Names: '|':pVSidebarView:0x7fe3b4685010 )>",
"<NSAutoresizingMaskLayoutConstraint:0x7fe3b13a24f0 h=-&- v=-&- H:[PVSidebarView:0x7fe3b4685010]-(0)-| (Names: '|':NSView:0x7fe3b4680230 )>",
"<NSAutoresizingMaskLayoutConstraint:0x7fe3b13a2490 h=-&- v=-&- H:|-(0)-[PVSidebarView:0x7fe3b4685010] (Names: '|':NSView:0x7fe3b4680230 )>",
"<NSAutoresizingMaskLayoutConstraint:0x7fe3abc9c240 h=--& v=--& H:[NSView:0x7fe3b4680230(0)]>"
)

Will attempt to recover by breaking constraint
<NSLayoutConstraint:0x7fe3b431c7f0 H:[NSView:0x7fe3b4673ce0]-(0)-| (Names: '|':pVSidebarView:0x7fe3b4685010 )>

Set the NSUserDefault NSConstraintBasedLayoutVisualizeMutuallyExclusiveConstraints to YES to have -[NSWindow visualizeConstraints:] automatically called when this happens. And/or, break on objc_exception_throw to catch this in the debugger.
May 4 19:58:05 PolePro WindowServer[83]: CGXSetWindowListTags: Invalid window 0x170b

That happens on all 10.8.x version's I just checked! WTF? It seems like NVidia is making damn lousy job
with their closed source dumb **** drivers...

ASSUMPTIONS:

> anything that makes the GPU power hungry - switching to more power consumptions = probability of OpenGL Channel Timeout error
> problem is connected with PowerState management
> can be a global os x bug - need to check previous 10.7 versions for the same behaviour
> can be a 10.8 specific bug - need to check differences in PowerState switching (if opensourced)
> never again buy Nvidia based GPU - it's just trouble. trouble on linux, trouble on os x - that company is just being a dick, should have released their half-assed sources and let the community manage the quality since they can't
 
UPDATE:

Im reading through the Os x dev reference on apple.com - but before I go through it, any way how to sample a process and make a snapshot of system running
processes? Since I would like a sample:

Im gonna do a little Preview harassing ;-) on my hackintosh, but how do I get a good dump of what's going on in I/O Registry etc.?

I found out through ioreg -p IOPower that;

+-o IOPowerConnection <class IOPowerConnection, id 0x100000379, !registered, !matched, active, busy 0, retain 5>
+-o ACPI_SMC_PlatformPlugin <class ACPI_SMC_PlatformPlugin, id 0x100000319, registered, matched, active, busy 0 (2 ms), retain 12>
+-o IOPowerConnection <class IOPowerConnection, id 0x10000039c, !registered, !matched, active, busy 0, retain 5>
+-o AGPM <class AGPM, id 0x100000381, registered, matched, active, busy 0 (0 ms), retain 9>

AGPM underlies the ACPI_SMC - but I don't yet get the direct link between the NVDA Channel timeout! and AGPM but if there is one (NVDA errors occur on real macs the with the same intensity - but the hanging is managed without craping the system. Question: how?)

I need to sip through the docs.. maybe I'm just making too much of assumptions ;)
 
I believe i am having the issue described here as well with a 560ti (PNY) and 10.8.3

This is mostly occuring for me when running flash based videos or Netflix. Can almost make it happen 100% if i happen to pause a Netflix video while full screen and walk away for 10 min. Computer will be frozen except i will be able to move the cursor around. Happens other times as well and i use chrome exclusively, which sounds like it has nothing to do with it.

This is absolutely unacceptable and need a fix immediately. Would changing video cards help? Maybe time to upgrade to a 6 series card?

I hope you guys far smarter than i are watching this post. And if you are not i will probably be bumping it daily!@!@!
 
Well, just bought a Nvidia 660. Hope that is here monday.

The hackintosh has become absolutely unusable in its current state. Whatever happened in 10.8.3 completely fubar'd my 560ti build. Channel timeout occurs on a regular basis and the hole thing locks up.

I wish there was a headline on the front page about this before i upgraded to 10.8.3
 
Status
Not open for further replies.
Back
Top