diff options
-rw-r--r-- | include/mach/mach.defs | 4 | ||||
-rw-r--r-- | vm/vm_user.c | 15 |
2 files changed, 18 insertions, 1 deletions
diff --git a/include/mach/mach.defs b/include/mach/mach.defs index c5ffbc05..8e49d819 100644 --- a/include/mach/mach.defs +++ b/include/mach/mach.defs @@ -713,7 +713,9 @@ routine vm_machine_attribute( attribute : vm_machine_attribute_t; inout value : vm_machine_attribute_val_t); -skip; /* old host_fpa_counters_reset */ +routine vm_get_advice_info( + target_task : vm_task_t; + out max_cluster : vm_size_t); /* * There is no more room in this interface for additional calls. diff --git a/vm/vm_user.c b/vm/vm_user.c index c5530a69..1385b127 100644 --- a/vm/vm_user.c +++ b/vm/vm_user.c @@ -239,6 +239,21 @@ kern_return_t vm_machine_attribute(map, address, size, attribute, value) return vm_map_machine_attribute(map, address, size, attribute, value); } +/* + * Return machine-specific attribute for memory advice, such + * as maximal size of requested cluster. + */ +kern_return_t +vm_get_advice_info(vm_map_t map, vm_size_t* max_cluster /* OUT */) +{ + if (map == VM_MAP_NULL) + return(KERN_INVALID_ARGUMENT); + + *max_cluster = VM_ADVICE_MAX_READAHEAD * PAGE_SIZE; + + return KERN_SUCCESS; +} + kern_return_t vm_read(map, address, size, data, data_size) vm_map_t map; vm_address_t address; |