fix guarded region
This commit is contained in:
parent
2bebc35bd6
commit
42925eb214
@ -258,7 +258,7 @@ void * paging_malloc(size_t bytes, size_t * retbytes, size_t guarded_region_size
|
|||||||
aligned_bytes = 0;
|
aligned_bytes = 0;
|
||||||
}
|
}
|
||||||
*retbytes = aligned_bytes;
|
*retbytes = aligned_bytes;
|
||||||
debug_printf("[paging_malloc]: bytes = %x, aligned_bytes = %x, base = %p\n", bytes, aligned_bytes, ret);
|
// debug_printf("[paging_malloc]: bytes = %x, aligned_bytes = %x, base = %p, guarded_region_size = %x\n", bytes, aligned_bytes, ret, guarded_region_size);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -693,7 +693,7 @@ errval_t paging_alloc_ext(struct paging_state *st, void **buf, size_t bytes, siz
|
|||||||
errval_t err;
|
errval_t err;
|
||||||
|
|
||||||
thread_mutex_lock_nested(&st->lock);
|
thread_mutex_lock_nested(&st->lock);
|
||||||
err = _paging_alloc_ext(st, buf, bytes, alignment, heap, 0);
|
err = _paging_alloc_ext(st, buf, bytes, alignment, heap, guarded_region_size);
|
||||||
thread_mutex_unlock(&st->lock);
|
thread_mutex_unlock(&st->lock);
|
||||||
|
|
||||||
return err;
|
return err;
|
||||||
@ -812,6 +812,7 @@ static errval_t _paging_map_fixed_attr(struct paging_state *st, lvaddr_t vaddr,
|
|||||||
for(;vaddr_reg != NULL; vaddr_reg = vaddr_reg->next) {
|
for(;vaddr_reg != NULL; vaddr_reg = vaddr_reg->next) {
|
||||||
// we have found the region it belongs to
|
// we have found the region it belongs to
|
||||||
if(vaddr_reg->base <= vaddr && end_vaddr <= vaddr_reg->base + vaddr_reg->size) {
|
if(vaddr_reg->base <= vaddr && end_vaddr <= vaddr_reg->base + vaddr_reg->size) {
|
||||||
|
// debug_printf("[paging_map_fixed_attr] found vaddr_reg!, base = %p, size = %x, guarded_region_size = %x\n", vaddr_reg->base, vaddr_reg->size, vaddr_reg->guarded_region_size);
|
||||||
//check if we try to map anything in the guarded region!
|
//check if we try to map anything in the guarded region!
|
||||||
if (vaddr < vaddr_reg->base + vaddr_reg->guarded_region_size) {
|
if (vaddr < vaddr_reg->base + vaddr_reg->guarded_region_size) {
|
||||||
debug_printf("[paging_map_fixed_attr] attempt to map guarded region!, vaddr = %p, guarded_region_size = %x\n", vaddr, vaddr_reg->guarded_region_size);
|
debug_printf("[paging_map_fixed_attr] attempt to map guarded region!, vaddr = %p, guarded_region_size = %x\n", vaddr, vaddr_reg->guarded_region_size);
|
||||||
|
|||||||
@ -16,19 +16,4 @@ void do_test_threads(void) {
|
|||||||
debug_printf("TEST_THREADS: spawn %u\n", i);
|
debug_printf("TEST_THREADS: spawn %u\n", i);
|
||||||
CHECK_ERR(spawn_load_by_name("mallocator", &(si[i]), &(pid[i])));
|
CHECK_ERR(spawn_load_by_name("mallocator", &(si[i]), &(pid[i])));
|
||||||
}
|
}
|
||||||
|
|
||||||
// while (true) {
|
|
||||||
// debug_printf("[do_test_threads]: processes alive: ");
|
|
||||||
|
|
||||||
// struct spawninfo* process = spawn_get_process_list();
|
|
||||||
// while (process != NULL) {
|
|
||||||
// printf("%d, ", process->pid);
|
|
||||||
// process = process->next;
|
|
||||||
// }
|
|
||||||
|
|
||||||
// printf("\n");
|
|
||||||
|
|
||||||
// //wait for 1 second but handle events in the mean time
|
|
||||||
// barrelfish_usleep(1000000);
|
|
||||||
// }
|
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user