Fix: ColorSync deadlock (100% CPU) when using two identical monitors on macOS Sequoia
If you're running two identical external monitors on a Mac and colorsync.useragent + colorsyncd are eating ~100% CPU with constant rainbow spinners, here's a fix.
The problem
macOS generates two ICC profiles with the same base name for identical monitors (same EDID). When both displays trigger profile updates simultaneously (boot, wake, reconnect), colorsync.useragent deadlocks. Two threads block on the same mutex. colorsyncd spins trying to talk to the stuck process. Killing them doesn't help, they respawn and immediately deadlock again.
The fix
Lock the ICC profiles so ColorSync can't rewrite them:
# Find the duplicate profiles
ls /Library/ColorSync/Profiles/Displays/
# Lock them (replace with your monitor name)
sudo chflags uchg /Library/ColorSync/Profiles/Displays/YOUR_MONITOR*.icc
# Restart ColorSync
sudo killall -9 colorsync.useragent colorsyncd colorsync.displayservices
Processes respawn but can't rewrite the profiles → no deadlock. Verify with Activity Monitor.
To undo
sudo chflags nouchg /Library/ColorSync/Profiles/Displays/YOUR_MONITOR*.icc
What doesn't work
- Killing the processes (respawn + instant deadlock)
- Assigning different profiles per monitor (overwritten on reconnect)
- Deleting profiles or cache (regenerated instantly)
- ColorSync Profile First Aid ("No problems found")
I filed Apple Feedback, this is a macOS bug and looks like a regression that exists for quite some time.
Note: An EDID emulator dongle (~$15) on one cable is an alternative hardware fix but I did not try that.
Posted Mar 5, 2026, 11:38 AM UTC