87 |
/* Allocate SIZE bytes in the address space of TASK. If ANYWHERE_P is |
/* Allocate SIZE bytes in the address space of TASK. If ANYWHERE_P is |
88 |
false, enter new object at *OFFSETP, otherwise use suitable location. */ |
false, enter new object at *OFFSETP, otherwise use suitable location. */ |
89 |
kern_return_t |
kern_return_t |
90 |
vm_allocate (struct task *task, vm_size_t size, vm_offset_t *offsetp, |
vm_allocate (struct task *task, vm_offset_t *offsetp, vm_size_t size, |
91 |
bool anywhere_p) |
bool anywhere_p) |
92 |
{ |
{ |
93 |
struct vm_object *object; |
struct vm_object *object; |
94 |
kern_return_t kr; |
kern_return_t kr; |
95 |
|
|
|
#if 0 |
|
|
trace_printf ("vm allocate: task %p size %x offset %x anywhere %d", |
|
|
task, size, *offsetp, anywhere_p); |
|
|
#endif |
|
|
|
|
96 |
object = vm_object_allocate (size); |
object = vm_object_allocate (size); |
97 |
if (object == 0) |
if (object == 0) |
98 |
return KERN_RESOURCE_SHORTAGE; |
return KERN_RESOURCE_SHORTAGE; |