EXTERNAL DISPLAY PROBLEM: SOLUTION??? NO !!!!! WORKAROUND???? MAY BE !!!!
My last post propose a reset to solve the external display issue. This really work, but why?
Today, I just had another "external display issue" and attempted to see what happen without a reset. So this is what I did (The Experiment):
(1) Awake the laptop
(2) Login as usual without any external display connection. I have seen that login in sometimes helps in the external display problem.
(3) Connected the external display using the mini-port.
(4) PROBLEM ARISED. Laptop went blue then white and stuck there.
(5) Unplugged the miniport.
(6) After a while (20 seconds) the laptop went back to normal.
(7) Did the same again as (3), (4) came in, then I did (5) and (6) again
(8) I opened the "console" app, see the system log, I saw errors but hard to find out a clear answer.
(9) Start working reading mail as usual without the external display (I blaming apple as usual) for about 10 minutes.
(10) As a desesperated action, I tried again plugin the external miniport adapter again..... and GUESS, it worked.
(11) I compared the system log with the problem and without the problem, I observed differences in the log from applications not responding to the resolution change in messages like:
Aug 21 09:42:58 <computer> WindowServer[79]: CGXDisableUpdate: UI updates were forcibly disabled by application "Eclipse" for over 1.00 seconds. Server has re-enabled them.
Aug 21 09:42:58 <computer> WindowServer[79]: CGXDisableUpdate: UI updates were forcibly disabled by application "SystemUIServer" for over 1.00 seconds. Server has re-enabled them.
Aug 21 09:42:58 <computer> WindowServer[79]: CGXDisableUpdate: UI updates were forcibly disabled by application "Notification Center" for over 1.00 seconds. Server has re-enabled them.
THEN many more message below ....
Aug 21 09:43:12 <computer>.local WindowServer[79]: disable_update_likely_unbalanced: UI updates still disabled by application "Eclipse" after 15.00 seconds (server forcibly re-enabled them after 1.00 seconds). Likely an unbalanced disableUpdate call.
Aug 21 09:43:12 <computer>.local WindowServer[79]: disable_update_likely_unbalanced: UI updates still disabled by application "SystemUIServer" after 15.00 seconds (server forcibly re-enabled them after 1.00 seconds). Likely an unbalanced disableUpdate call.
Aug 21 09:43:12 <computer>.local WindowServer[79]: disable_update_likely_unbalanced: UI updates still disabled by application "Notification Center" after 15.00 seconds (server forcibly re-enabled them after 1.00 seconds). Likely an unbalanced disableUpdate call.
Aug 21 09:43:32 <computer> kernel[0]: stampWait: Overflowed checking for stamp 0x98282a9 on MAIN ring: called from sleepForTimeStamp
Aug 21 09:43:32 <computer> kernel[0]: timestamp = 0x98282a1
Aug 21 09:43:32 <computer> kernel[0]: GPU hang:
Aug 21 09:43:32 <computer> kernel[0]: Trying restart GPU ...
Aug 21 09:43:32 <computer> kernel[0]: MAIN ring is stuck waiting on an event
Aug 21 09:43:32 <computer> kernel[0]: After attempt to clear wait condition = 0x0000f001 no longer waiting
Aug 21 09:43:33 <computer> com.apple.launchd[1] (com.apple.DumpGPURestart): Throttling respawn: Will start in 9 seconds
Aug 21 09:43:37 <computer> com.apple.launchd[1] (com.apple.DumpGPURestart): Throttling respawn: Will start in 5 seconds
Aug 21 09:43:37 <computer> kernel[0]: stampWait: Overflowed checking for stamp 0x98282a9 on MAIN ring: called from sleepForTimeStamp
Aug 21 09:43:37 <computer> kernel[0]: timestamp = 0x98282a8
Aug 21 09:43:37 <computer> kernel[0]: GPU hang:
Aug 21 09:43:37 <computer> kernel[0]: Trying restart GPU ...
Aug 21 09:43:37 <computer> kernel[0]: MAIN ring is NOT waiting on an event
================================================
DISCUSSION
================================================
To me, the first and second failures were due to applications not responding to change then the OS seems to restart GPU and that caused a problem. When I used the computer for about 10 minutes, all applications, cache, and everything went back to run as usual, that is, they went "ready", then the third connection was successfull because the applications responded "quickly" to resolution change.
CONCLUSION: It seems that the OS needs to be "stable" after an awake in order to apps respond quickly to resolution change and avoid problems. This is in agreement with the "reset" procedure since a reset make everything clean and the OS has no load for previous sessions and windows. Therefore the workaround for this will be (1) Awake, (2) Login, (3) "Awake" applications by just clicking their icons to force refresh cache and that stuffs, (4) Wait for 1 minute or so, and (5) Connect the miniport....... for a better SOLUTION: APPLE MAKE BETTER SOFTWARE.