20

Sometimes, Yosemite will randomly log me out without warning or a chance to save work. This has happened twice so far since I've installed Yosemite on my 2012 Retina MacBook Pro. Needless to say, this is very unnerving and reminiscent of malware activity.

With help from Google and scouring event logs, I've traced the problem down to a crash in the window server. The crash report can be found here: http://puu.sh/csTor/0012220497.crash

Is there anything I can do to stop this from happening again?

Update: It seems having a secondary monitor is triggering it. Dell U2412 over HDMI. I also seem to be able to prevent crashing by avoiding the login screen while the monitor is plugged in.

  • > Can this have something to do with (?): System Preferences - Security & Privacy - Advance - Log out after XXX minutes of inactivity. MacRumors thread – Cmag Oct 29 '14 at 18:58
  • That option is disabled and shouldn't cause a crash to be logged. – mm201 Oct 30 '14 at 14:14
  • I'm running OSx 10.10.1 on a brand new 5 day old MacBook Pro 13 inch and I'm having exactly the same problem. Can simply be working and all of a sudden all my apps quit and I get logged out. Its very annoying and clearly an OSX bug. Heres a related thread so you're not alone on this problem. forums.macrumors.com/showthread.php?t=1770330 – user105689 Dec 22 '14 at 7:59
  • I had this today on my Macbook Pro. If you have ever killed the WindowServer from the command line then this is exactly how it looks. So I suspect for some reason the WidowServer is crashing which will take you directly to the Login window with out passing go.. edit..(which I see you already note..doh) – markhunte Jan 2 '15 at 23:57
  • 1
    I’m also suffering from this issue. Anyone tried 10.10.2 beta if this issue is still there? @joelittlejohn: I can confirm that it’s somehow related to the HDMI-connected screen. In the office, where I use a Thunderbolt Display, I never had this issue. At home though, where I use an HDMI-connected display, this occurs quite often, usually shortly after connecting the screen. – aaronk6 Jan 24 '15 at 18:46
16
+50

There is no point in trying the vague 'catch all' solutions like wiping NVRAM and system controllers. The problem you are having is a SIGSEGV, or, a segmentation fault in WindowServer. It is likely due to corrupt identifiers. Those identifiers are stored in multiple places, and if enough get corrupt, you get crashes. While some identifiers are stored in the NVRAM (or PRAM), wiping this usually only postpones the next crash since the identifier eventually ends up in there again.

If WindowServer crashes, all GUI applications stop and it restarts via launchd. When WindowServer starts, it first gives you the login window. So in fact, you are not getting logged out, but your whole graphical session simply crashes.

Having a peek at your crash report, it seems this thread is crashing:

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread

The last few calls were to color space functions (or methods), leading me to believe you might simply be dealing with a corrupt ICC profile.

The cash is within com.apple.CoreGraphics, and the most recent calls are to:

color_space_get_md5_digest + 57
color_space_get_identifier + 9
CGXColorSpaceRegistryCopyRegisteredColorSpace + 42
_CGXCopyColorSpace + 27
_XCopyColorSpace + 57

Now, if I'm right, it's trying to calculate the MD5 hash of a color space. It's doing that because it wants to find the identifier for a color space, and it needs that identifier because CGXColorSpaceRegistryCopyRegisteredColorSpace needs the color space data for the preset color profile for your monitor. Now, to be 100% this is the source of your crashes, I would need as many of your crash reports as possible, because if they all crash because of different reasons, it has nothing to do with the software on your system but it's more likely to be a hardware issue where bogus data is fed in to the software which then tries to do something with that data which it cannot do and therefore cashes.

A simple test might be to start Apple's built in ColorSync Utility and pressing the Repair button. This could print something like:

Header message digest (MD5) is not correct. Fixed.

Which would make sense since a broken MD5 might be the source of your crash. So try that first. On my system, that ColorSync Utility is in /Applications/Utilities and I think it has been there since every version of OS X. Please let me know if that found broken ICC files and if it could fix them. If not (either nothing found or unable to fix) please do post any crash logs on WindowServer you have :)

  • OSX automatically deleted the old ones from before I started avoiding the login screen. The one from today is indeed a crash in color_space_get_md5_digest. I found a profile for a very old monitor (not the one triggering) which was missing several fields, but not a bad MD5, and deleted it. – mm201 Jan 28 '15 at 15:40
  • +1 already, nice answer. Here's my most recent crash: pastebin.com/raw.php?i=g9qWyfu2 My machine was idle for a while (10 mins?), when I came back and logged in (at 12:26) I noticed that all my apps were re-launching. – joelittlejohn Jan 29 '15 at 12:43
  • And the crash log: pastebin.com/raw.php?i=WMVLjy6A – joelittlejohn Jan 29 '15 at 13:08
  • 1
    Well joelittlejohn, your installation seems to be seriously mangled in general! So many problems on that system of yours! It seems to be recovering most of them, but I might be time to do a fresh install and update everything... Regarding your crash: WindowServer crashed indeed, but for a different reason. It was trying to read a colorspace cache file, and it did because of a new program connection, and it crashed during the reply to the connection request. Do run ColorSync first aid, wipe all caches and check Emacs, it was the last one to talk to the WindowServer. Also: check display cables. – John Keates Jan 30 '15 at 5:33
3

A possible cause for this could be invalid profiles generated by F.lux to provide smooth transitioning between GPU modes - here's an overview of what it does with these profiles: https://justgetflux.com/news/2014/10/28/profile.html

In my fresh install of El Capitan it had created these invalid profiles: invalid profiles

ColorSync Utility can be used to verify, remove and/or repair these profiles, or the flux profile switching can be completely disabled with:

defaults write org.herf.Flux disableProfile 1

Followed by removing the profiles.

2

This is a known Bug with Apple. I reported a similar problem in their bugtracker, which was closed as a duplicate of bug #18234875.

Sadly, those bugs cannot be viewed or tracked, apart by the reporter. However, it means that Apple knows about the problem and will hopefully fix it in one of the next OS X updates.

  • Do you still have this problem in 10.10.2? – aaronk6 Jan 30 '15 at 17:15
  • It's hard for me to reproduce. If I experience it again, I will try to report back here. – Arne Jan 31 '15 at 21:25
  • I get the feeling that 10.10.2 fixed the underlying cause. We may never be sure which (if any) workarounds actually worked. – mm201 Jan 31 '15 at 21:37
0

Try resetting the SMC and NVRAM while the second monitor is plugged in.

  • Reset SMC

Shut down your computer, press left alt, control, shift and the power button at the same time, hold it down for about 5 seconds.

  • Reset NVRAM

Start your computer and right before you hear the startup chime, press and hold , alt, P and R at the same time until you hear your startup chime again.

It might be so that the screen is not supported, - for some reason, if it is not supported, this would unfortunetaly not fix it.

  • This isn't a viable solution I'm afraid. I can't restart the machine multiple times every time I need to switch to a different external display. – joelittlejohn Jan 27 '15 at 10:43
  • You don't have to do it everytime. – DisplayName Jan 27 '15 at 16:53
  • as I see, in that case, yes I have tried this multiple times and it does not fix the problem. The best I have managed to achieve is unplugging the monitor then resetting SMC & VRAM. This seems to solve the problem but the forced logouts return when I begin using any external displays, whether I reset again or not. – joelittlejohn Jan 27 '15 at 17:04
  • It seems to have worked for me. Then again, I've been doing upgrade installs since Lion so corruption seems plausible. – mm201 Jan 28 '15 at 1:16
  • False alarm. Just had another one after 2 days. The randomness is very frustrating. – mm201 Jan 28 '15 at 15:38
0

I read a lot of these threads and I have the same symptom when I disconnect my last virtual monitor from my Mac Mini (Air Display).

My crash stopped happening by disabling Mission Control option "Displays have separate spaces". Please let me know if this works for you.

  • My crash was related to colour profiles and was eventually fixed by Apple. Hopefully this answer will be useful to someone else. – mm201 Sep 16 '15 at 16:50

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .