anchor.diff:              ;; Recover free descriptors.
               (with-rtl8168-access (nic)
                 (loop
  -                 (when (eql (rtl8168-tx-current nic) (rtl8168-tx-tail nic))
  +                 (when (eql (rtl8168-tx-used-count nic) 0)
                      ;; All pending descriptors processed.
                      (return))
                    (when (logbitp +rtl8168-descriptor-OWN+ (rtl8168-tx-desc-flags nic (rtl8168-tx-tail nic)))
  
positive.code:          (loop
              ;; Wait for something to happen.
              ;; Either an interrupt, a request to send, or the device's boot epoch expiring.
              (sync:wait-for-objects (rtl8168-irq-handler nic)
                                     (rtl8168-tx-mailbox nic)
                                     (rtl8168-boot-id nic))
              ;; Perform receive handling. Remove packets from the RX ring
              ;; until there are none left.
              (loop
  
negative.code:           0
            0))
  
  (defun tx-descriptors-available-p (nic)
    (not (eql (rtl8168-tx-used-count nic) +rtl8168-n-tx-descriptors+)))
  
  (defun rtl8168-worker (nic)
    (when (not (rtl8168-initialize nic))
      (return-from rtl8168-worker))
  