I have the screensaver on my MacBook set to kick in after two minutes of inactivity and require a password immediately after it does. Normally, this works fine, but in the last week or so, the screensaver hasn't come on at all. After skimming pmset
s manual page, I made this discovery:
$ pmset -g assertions
2015-04-11 22:30:47 -0700
Assertion status system-wide:
BackgroundTask 0
ApplePushServiceTask 0
UserIsActive 1
PreventUserIdleDisplaySleep 1
PreventSystemSleep 0
ExternalMedia 0
PreventUserIdleSystemSleep 1
NetworkClientActive 0
Listed by owning process:
pid 71(hidd): [0x004d32870009146b] 12:40:26 UserIsActive named: "com.apple.iohideventsystem.queue.tickle"
Timeout will fire in 7192 secs Action=TimeoutActionRelease
pid 19013(AddressBookSour): [0x00332e3200050457] 486:17:00 PreventUserIdleDisplaySleep named: "com.apple.avkit.disableUserIdleDisplaySleep"
Details: disable user idle display sleep
Kernel Assertions: 0x100=MAGICWAKE
id=504 level=255 0x100=MAGICWAKE mod=2015-04-11, 12:44:09 description=en1 owner=en1
If I'm reading this right, the latter assertion there would prevent the screensaver from kicking in or the display from going to sleep. (Presumably the former assertion exists only because I'm actively using the machine.) The problem is…it belongs to a process that doesn't exist at this point.
$ ps -e | grep 19013
$
No wonder the screensaver isn't activating.
Am I right? What might be causing this assertion to stick around after its process died? Short of logging out or rebooting, how do I get rid of it?
MAGICWAKE
line, that sounds like a wake-from-sleep-on-LAN thing (especially because of theowner=en1
bit).