anchor.diff:          (debug-print-line "Range: " (freelist-metadata-start range) "-" (freelist-metadata-end range) ":" (freelist-metadata-free-p range)))
         (return))))
   
  -(defun store-free-1 (start n-blocks)
  +(defun store-free (start n-blocks)
  +  (ensure (mutex-held-p *vm-lock*) "*VM-LOCK* must be held when freeing store.")
  +  (store-maybe-refill-metadata)
     (incf *store-freelist-n-free-blocks* n-blocks)
     (store-insert-range start n-blocks t))
   
  -(defun store-free (start n-blocks)
  +(defun store-deferred-free (start n-blocks)
  +  (store-maybe-refill-metadata)
     (ensure (mutex-held-p *vm-lock*) "*VM-LOCK* must be held when freeing store.")
  -  (store-free-1 start n-blocks))
  -
  -(defun store-alloc-1 (n-blocks)
  +  (debug-print-line "Deferred store free " start " " n-blocks))
  +
  +(defun store-alloc (n-blocks)
     "Allocate from the in-memory freelist only. The freelist lock must be held."
  +  (ensure (mutex-held-p *vm-lock*) "*VM-LOCK* must be held when allocating store.")
  +  (store-maybe-refill-metadata)
     ;; Find a free range large enough.
     (do ((range *store-freelist-head* (freelist-metadata-next range)))
         ((null range)
  
positive.code:       (when (not (freelist-metadata-free-p range))
          (incf total-allocated-ranges)))
      ;; Allocate disk block & memory page.
      (setf disk-block (store-alloc-1 1))
      (when (not disk-block)
        ;; Oh, the irony.
        (debug-print-line "Unable to allocate store for freelist.")
        (return-from regenerate-store-freelist nil))
      (setf memory-block (allocate-page))
      (when (not memory-block)
        (store-free-1 disk-block 1)
        (debug-print-line "Unable to allocate memory for freelist.")
        (return-from regenerate-store-freelist nil))
      (zeroize-page memory-block)
  
negative.code: 
  ;;; Free metadata objects.
  (defvar *store-freelist-metadata-freelist*)
  (defvar *store-freelist-n-free-metadata*)
  (defvar *store-freelist-recursive-metadata-allocation*)
  (defconstant +store-freelist-metadata-soft-limit+ 16)
  
  ;;; Block counts.
  (defvar *store-freelist-n-free-blocks*)
  