solve spurious wakeups