anchor.diff:      (when completed
         ;; There were some completed events.
         (release-place-spinlock *big-wait-for-objects-lock*)
  +      ;; Set LINKS to T to indicate that no events were registered with.
  +      ;; See the big comment in WFO-WAIT.
  +      (setf (wfo-links wfo) :completed)
         (return-from wfo-wait-1 completed)))
     ;; Register our wait queue with each event.
     (dolist (event (wfo-events wfo))
  
positive.code:                    (return itr)))))
          (setf (wfo-links wfo) '())
          (dolist (event (wfo-events wfo))
            (let ((link (deregister-from-event event wfo)))
              (setf (cdr link) (wfo-links wfo)
                    (wfo-links wfo) link)))))))
  
  
negative.code:     ;; Sleep.
      (setf (thread-wait-item self) wfo
            (thread-state self) :sleeping
            (thread-unsleep-helper self) #'wfo-unsleep-helper
            (thread-unsleep-helper-argument self) wfo)
      (unlock-wait-queue wfo)
      (%reschedule-via-wired-stack sp fp)))
  
  (defun wfo-unsleep-helper (wfo)
    (declare (ignore wfo))
    nil)
  
  (defun wfo-unregister (wfo)
    (safe-without-interrupts (wfo)
      (with-place-spinlock (*big-wait-for-objects-lock*)
        ;; Unregister from events and reclaim the links.
        ;; This resets the WFO object and prepares it for re-waiting.
        (flet ((unregister-from-event (event marker)
                 (do ((itr (event-waiters event) (cdr itr))
                      (prev nil itr))
                     ((null itr)
  