anchor.diff:        ;; block map.
         ;; ### must investigate if allocate-stack still needs this behaviour & why.
         (when (or (not block-info)
  -                (not (logtest sys.int::+block-map-present+ block-info)))
  +                (not (block-info-present-p block-info)))
           #+(or)(debug-print-line "WFP " address " not present")
           (return-from wait-for-page nil))
         ;; No page allocated. Allocate a page and read the data.
         (let* ((frame (pager-allocate-page))
                (addr (+ +physical-map-base+ (ash frame 12)))
                (is-zero-page nil))
  -        (setf (physical-page-frame-block-id frame) (ldb (byte sys.int::+block-map-id-size+ sys.int::+block-map-id-shift+) block-info)
  +        (setf (physical-page-frame-block-id frame) (block-info-block-id block-info)
                 (physical-page-virtual-address frame) (logand address (lognot (1- +4k-page-size+))))
           (when (not *page-replacement-list-head*)
             (pager-log "addr " address " vaddr " (physical-page-virtual-address frame) " frame " frame " pteA " (get-pte-for-address address #+(or)(physical-page-virtual-address frame) nil) " pteB " (get-pte-for-address (physical-page-virtual-address frame) nil)))
           (append-to-page-replacement-list frame)
  -        (cond ((logtest sys.int::+block-map-zero-fill+ block-info)
  +        (cond ((block-info-zero-fill-p block-info)
                  ;; Block is zero-filled.
                  (setf is-zero-page t)
                  (zeroize-page addr)
  
positive.code:                  (panic "Unable to read page from disk"))))
          (setf (page-table-entry pte 0) (logior (ash frame 12)
                                                 +page-table-present+
                                                 (if (logtest sys.int::+block-map-writable+ block-info)
                                                     +page-table-write+
                                                   0)))
          (sys.int::%invlpg address)
  
negative.code: 
  (defun zeroize-physical-page (physical-addr)
    (sys.int::%fill-words (+ +physical-map-base+ physical-addr) 0 512))
  
  (declaim (inline block-info-present-p))
  (defun block-info-present-p (block-info)
    (logtest sys.int::+block-map-present+ block-info))
  
  (declaim (inline block-info-zero-fill-p))
  (defun block-info-zero-fill-p (block-info)
    (logtest sys.int::+block-map-zero-fill+ block-info))
  
  (declaim (inline block-info-writable-p))
  (defun block-info-writable-p (block-info)
    (logtest sys.int::+block-map-writable+ block-info))
  
  (declaim (inline block-info-committed-p))
  (defun block-info-committed-p (block-info)
    (logtest sys.int::+block-map-committed+ block-info))
  
  (declaim (inline block-info-block-id))
  (defun block-info-block-id (block-info)
    (ldb (byte sys.int::+block-map-id-size+ sys.int::+block-map-id-shift+)
         block-info))
  
  (defun page-aligned-p (value)
    (zerop (logand value #xFFF)))
  