Sometimes I see a distnoted
process suddenly spin up and chew up 100% CPU (on one core) and a ton of memory, often in the neighborhood of 1.5G or so. This happens a few times a day, starting a month or so ago.
The command line is /usr/sbin/distnoted agent
, and it's started by launchd
, neither of which help much. It's usually been running for somewhere between 4h and 24h before it spins up and pegs the CPU.
Web searches say distnoted
manages notification delivery, and lots of other people report the same problem with it, but I haven't yet found a fix. Some people find that closing a culprit application (e.g. Skype) stops it, but I haven't found a culprit on my machine yet. I'm usually only running a few apps: Emacs (24.2 from Homebrew), Firefox, Adium, and Dash.
I'm on Mavericks on a late 2012 13" Retina MBP. Thanks in advance!
Update:
I've turned on distnoted
logging in the system log by touching /var/log/do_dnserver_log
, but it doesn't help much. I see lines like these (uid 501 is me, 89 I haven't found yet):
distnoted[80011]: # distnote server agent absolute time: 48754.144787848 civil time: Wed Nov 20 10:52:03 2013 pid: 80011 uid: 501 root: no
distnoted[20]: # distnote server daemon absolute time: 2.808112262 civil time: Tue Nov 19 09:52:24 2013 pid: 20 uid: 0 root: yes
distnoted[444]: # distnote server agent absolute time: 16.656997509 civil time: Tue Nov 19 09:52:38 2013 pid: 444 uid: 501 root: no
distnoted[1271]: # distnote server agent absolute time: 52.518265717 civil time: Tue Nov 19 09:53:14 2013 pid: 1271 uid: 89 root: no
distnoted[689]: Interruption - exiting now.
I've also run sudo dtruss -p PID
on a spun-up distnoted
process, and it spews lines like this:
kevent64(0x3, 0x7FFF7C3FD130, 0x1) = 1 0
workq_kernreturn(0x20, 0x0, 0x1) = 0 0
workq_kernreturn(0x20, 0x0, 0x1) = 0 0
kevent64(0x3, 0x7FFF7C3FD130, 0x1) = 1 0
workq_kernreturn(0x20, 0x0, 0x1) = 0 0
workq_kernreturn(0x20, 0x0, 0x1) = 0 0
kevent64(0x3, 0x7FFF7C3FD130, 0x1) = 1 0
workq_kernreturn(0x20, 0x0, 0x1) = 0 0
__disable_threadsignal(0x1, 0x0, 0x0) = 0 0
__disable_threadsignal(0x1, 0x0, 0x0) = 0 0
__disable_threadsignal(0x1, 0x0, 0x0) = 0 0
kevent64(0x3, 0x7FFF7C3FD130, 0x1) = 1 0
workq_kernreturn(0x20, 0x0, 0x1) = 0 0
...