From bc23dda642a299fb1380294f4e5940511bc512ef Mon Sep 17 00:00:00 2001 From: Richard Braun Date: Fri, 5 Aug 2016 15:00:07 +0200 Subject: Augment VM maps with task names This change improves the clarity of "no more room for ..." VM map allocation errors. * kern/task.c (task_init): Call vm_map_set_name for the kernel map. (task_create): Call vm_map_set_name where appropriate. * vm/vm_map.c (vm_map_setup): Set map name to NULL. (vm_map_find_entry_anywhere): Update error message to include map name. * vm/vm_map.h (struct vm_map): New `name' member. (vm_map_set_name): New inline function. --- kern/task.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'kern') diff --git a/kern/task.c b/kern/task.c index d721f172..673a4378 100644 --- a/kern/task.c +++ b/kern/task.c @@ -75,6 +75,7 @@ void task_init(void) */ (void) task_create(TASK_NULL, FALSE, &kernel_task); (void) task_set_name(kernel_task, "gnumach"); + vm_map_set_name(kernel_map, kernel_task->name); } kern_return_t task_create( @@ -99,10 +100,12 @@ kern_return_t task_create( new_task->map = kernel_map; } else if (inherit_memory) { new_task->map = vm_map_fork(parent_task->map); + vm_map_set_name(new_task->map, new_task->name); } else { new_task->map = vm_map_create(pmap_create(0), round_page(VM_MIN_ADDRESS), trunc_page(VM_MAX_ADDRESS), TRUE); + vm_map_set_name(new_task->map, new_task->name); } simple_lock_init(&new_task->lock); -- cgit v1.2.3