anchor.diff:        ,dma-buffer)
        ,result))
   
  -(defun alloc-persistent-sg-vec (length)
  +(defun alloc-persistent-sg-vec (length errorp)
  +  (declare (ignore errorp))
     (sys.int::make-simple-vector (ceiling length #x1000) :wired))
   
   (defun update-persistent-sg-vec (virtual-address sg-vec)
  
positive.code:                              (+ (align-up aligned-length #x200000)
                                  +dma-buffer-guard-size+)))
             (sg-vec (if persistent
                         (alloc-persistent-sg-vec length)
                         (alloc-sg-vec length
                                       :contiguous contiguous
                                       :32-bit 32-bit)))
             (did-map nil)
             (successp nil))
        ;; Be very careful to ensure that the physical memory is freed if something
        ;; goes wrong during creation.
        (unwind-protect
  
negative.code:                           (return))
                          (when (eql attempt 1)
                            ;; Can't get any smaller than this.
                            (when errorp
                              (error "Unable to allocate dma buffer of length ~D" length))
                            (return-from alloc-sg-vec nil))
                          (setf attempt (ceiling attempt 2)))
                       (decf n-frames-remaining attempt)
                       (incf n-entries)
  