apple_protect_pager_synchronize,
apple_protect_pager_map,
apple_protect_pager_last_unmap,
+ NULL, /* data_reclaim */
"apple protect pager"
};
upl_pl = NULL;
fault_info = *((struct vm_object_fault_info *) mo_fault_info);
fault_info.stealth = TRUE;
+ fault_info.io_sync = FALSE;
+ fault_info.mark_zf_absent = FALSE;
+ fault_info.batch_pmap_op = FALSE;
interruptible = fault_info.interruptible;
pager = apple_protect_pager_lookup(mem_obj);
kernel_mapping,
src_page->phys_page,
VM_PROT_READ,
- src_object->wimg_bits & VM_WIMG_MASK,
+ VM_PROT_NONE,
+ 0,
TRUE);
/*
* Establish an explicit pmap mapping of the destination
kernel_mapping + PAGE_SIZE_64,
dst_pnum,
VM_PROT_READ | VM_PROT_WRITE,
- dst_object->wimg_bits & VM_WIMG_MASK,
+ VM_PROT_NONE,
+ 0,
TRUE);
/*
vm_object_deallocate(pager->backing_object);
pager->backing_object = VM_OBJECT_NULL;
}
-
- /* trigger the destruction of the memory object */
- memory_object_destroy(pager->pager_control, 0);
/* deallocate any crypt module data */
if(pager->crypt.crypt_end)
pager->crypt.crypt_end(pager->crypt.crypt_ops);
+
+ /* trigger the destruction of the memory object */
+ memory_object_destroy(pager->pager_control, 0);
}
/*