summaryrefslogtreecommitdiff
path: root/mach-defpager
diff options
context:
space:
mode:
authorMaksym Planeta <mcsim.planeta@gmail.com>2012-04-07 17:21:36 +0300
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2012-04-08 22:03:29 +0200
commit615b470e8afb140ac45afcb01c402391c2b3b013 (patch)
tree4e068af1009b8022e58529735e20bbeac2ecdf00 /mach-defpager
parent6accc4a85122b0ac627cb2a63534b3b91ec9eeb1 (diff)
Add support for new pageout interface for defpager.
* mach-defpager/default_pager.c: (seqnos_memory_object_init, seqnos_memory_object_data_request): Use new interface. (seqnos_memory_object_data_return): Proceed request correctly.
Diffstat (limited to 'mach-defpager')
-rw-r--r--mach-defpager/default_pager.c19
1 files changed, 10 insertions, 9 deletions
diff --git a/mach-defpager/default_pager.c b/mach-defpager/default_pager.c
index 0b6253f0..5a83f437 100644
--- a/mach-defpager/default_pager.c
+++ b/mach-defpager/default_pager.c
@@ -2451,10 +2451,9 @@ seqnos_memory_object_init(pager, seqno, pager_request, pager_name,
* until we unlock the object.
*/
- kr = memory_object_set_attributes(pager_request,
- TRUE,
- FALSE, /* do not cache */
- default_pager_copy_strategy);
+ kr = memory_object_ready(pager_request,
+ FALSE, /* Do not cache */
+ default_pager_copy_strategy);
if (kr != KERN_SUCCESS)
panic(here, my_name);
@@ -2676,10 +2675,11 @@ ddprintf ("seqnos_memory_object_data_request <%p>: pager_port_unlock: <%p>[s:%d,
VM_PROT_NONE,
FALSE, MACH_PORT_NULL);
} else {
- (void) memory_object_data_provided(
+ (void) memory_object_data_supply(
reply_to, offset,
- addr, vm_page_size,
- VM_PROT_NONE);
+ addr, vm_page_size, FALSE,
+ VM_PROT_NONE,
+ FALSE, MACH_PORT_NULL);
}
break;
@@ -2933,8 +2933,9 @@ seqnos_memory_object_data_return(pager, seqno, pager_request,
boolean_t dirty;
boolean_t kernel_copy;
{
- panic("%sdata_return",my_name);
- return(KERN_FAILURE);
+
+ return seqnos_memory_object_data_write (pager, seqno, pager_request,
+ offset, addr, data_cnt);
}
kern_return_t