WindowServer Crashing After Big Sur Update – How to Fix

big surcrash

Two crashes in one week.

First time, my macbook was in idle state, and I was not at the desk. I only noticed that the system restarted when I tried to log back into it. Here is the crash log from console:

Process:               WindowServer [133]
Path:                  /System/Library/PrivateFrameworks/SkyLight.framework/Versions/A/Resources/WindowServer
Identifier:            WindowServer
Version:               600.00 (564)
Code Type:             X86-64 (Native)
Parent Process:        launchd [1]
Responsible:           WindowServer [133]
User ID:               88

Date/Time:             2021-02-10 22:06:53.784 -0500
OS Version:            macOS 11.0.1 (20B29)
Report Version:        12
Bridge OS Version:     3.0 (14Y908)
Anonymous UUID:        BBF14B17-C2EC-E01D-AFDF-FE5E2D9304E5

Sleep/Wake UUID:       7563D56A-0A47-457B-B758-83193417162E

Time Awake Since Boot: 710000 seconds
Time Since Wake:       45000 seconds

System Integrity Protection: enabled

Crashed Thread:        0  Dispatch queue: com.apple.tcc.preflight.kTCCServiceScreenCapture

Exception Type:        EXC_CRASH (SIGKILL)
Exception Codes:       0x0000000000000000, 0x0000000000000000
Exception Note:        EXC_CORPSE_NOTIFY

Termination Reason:    WATCHDOG, [0x1] monitoring timed out for service
Termination Details:   WATCHDOG, checkin with service: WindowServer returned not alive with context:
unresponsive work processor(s): WindowServer main thread 
40 seconds since last successful checkin, 4511 total successsful checkins since wake (0 induced crashes)
...    

The 2nd time was this morning, when I was working on my macbook, and suddenly, my mouse was frozen:

Process:               WindowServer [68647]
Path:                  /System/Library/PrivateFrameworks/SkyLight.framework/Versions/A/Resources/WindowServer
Identifier:            WindowServer
Version:               600.00 (564)
Code Type:             X86-64 (Native)
Parent Process:        launchd [1]
Responsible:           WindowServer [68647]
User ID:               88

Date/Time:             2021-02-17 09:11:56.499 -0500
OS Version:            macOS 11.0.1 (20B29)
Report Version:        12
Bridge OS Version:     3.0 (14Y908)
Anonymous UUID:        BBF14B17-C2EC-E01D-AFDF-FE5E2D9304E5

Sleep/Wake UUID:       B380A623-51A8-4067-981B-5664B5FE5B44

Time Awake Since Boot: 890000 seconds
Time Since Wake:       1800 seconds

System Integrity Protection: enabled

Crashed Thread:        0  Dispatch queue: com.apple.tcc.preflight.kTCCServiceScreenCapture

Exception Type:        EXC_CRASH (SIGKILL)
Exception Codes:       0x0000000000000000, 0x0000000000000000
Exception Note:        EXC_CORPSE_NOTIFY

Termination Reason:    WATCHDOG, [0x1] monitoring timed out for service
Termination Details:   WATCHDOG, checkin with service: WindowServer returned not alive with context:
unresponsive work processor(s): WindowServer main thread 
40 seconds since last successful checkin, 185 total successsful checkins since wake (0 induced crashes)
...    

Never had this kind of crash with High Sierra, Mojave or Catalina. It has been happening since my macbook was upgraded to Big Sur.

Is there any possible fix?

Update:
Another crash after my mbp was upgraded to 11.2.2

Process:               WindowServer [137]
Path:                  /System/Library/PrivateFrameworks/SkyLight.framework/Versions/A/Resources/WindowServer
Identifier:            WindowServer
Version:               600.00 (570.7)
Code Type:             X86-64 (Native)
Parent Process:        launchd [1]
Responsible:           WindowServer [137]
User ID:               88

Date/Time:             2021-03-16 13:03:14.038 -0400
OS Version:            macOS 11.2.2 (20D80)
Report Version:        12
Bridge OS Version:     3.0 (14Y908)
Anonymous UUID:        BBF14B17-C2EC-E01D-AFDF-FE5E2D9304E5

Sleep/Wake UUID:       9BE2C5FD-9A74-49FB-8A09-DD621680F654

Time Awake Since Boot: 110000 seconds
Time Since Wake:       15000 seconds

System Integrity Protection: enabled

Crashed Thread:        0  Dispatch queue: com.apple.tcc.preflight.kTCCServiceScreenCapture

Exception Type:        EXC_CRASH (SIGKILL)
Exception Codes:       0x0000000000000000, 0x0000000000000000
Exception Note:        EXC_CORPSE_NOTIFY

Termination Reason:    WATCHDOG, [0x1] monitoring timed out for service
Termination Details:   WATCHDOG, checkin with service: WindowServer returned not alive with context:
unresponsive work processor(s): WindowServer main thread 
40 seconds since last successful checkin, 1507 total successsful checkins since wake (0 induced crashes)
...

Best Answer

Well, this one is puzzling. At first glance, it looks like something is trying to record your screen, and when WindowServer is requesting access, that request is getting timed out and causes WS to be terminated by xpc. Since from your description it doesn't sound like you're trying to take a screenshot/screencap, I can only theorize on possibilities:

  • You have Screen Sharing or Remote Management enabled in System Preferences -> Sharing and someone is trying to view your screen.
  • You have software or malware installed that takes screenshots/caps at certain times.
  • You have certain Accessibility features enabled.

None of the above should, in general, fail in the way that you're seeing, though. So you can check your settings in System Preferences and disable sharing & accessibility features as a test, but that would be a workaround at best, not a root cause & fix. (The malware possibility is there, too, but I'm always hesitant to go down that route until we've ruled out more benign causes.)

It should be noted that Big Sur has been a very buggy release and a lot of errors in particular pertain to WindowServer, so my suspicion is that what you're seeing is not at all your fault.

Here are things to try:

  1. System Preferences -> Sharing: Disable Screen Sharing and Remote Management, if enabled.
  2. System Preferences -> Accessibility: Disable any accessibility features you may have enabled.
  3. System Preferences -> Security & Privacy -> Accessibility: Disable all apps and share a list of them in your question.
  4. System Preferences -> Security & Privacy -> Screen Recording: Disable all apps and share a list of them in your question.
  5. If steps 1-4 don't help, the next time this happens, capture a sysdiagnose after rebooting from your crash and we can try to dig into your logs. You can do this either via the sysdiagnose command in Terminal or by pressing and holding the ShiftControlOptionCommand keys together and while holding these keys pressing and releasing the period . key.