diff --git a/src/kernel/core/team.c b/src/kernel/core/team.c index c5464cee79..2240ab5bf8 100644 --- a/src/kernel/core/team.c +++ b/src/kernel/core/team.c @@ -382,7 +382,8 @@ delete_team_struct(struct team *team) static int get_arguments_data_size(char **args, int argc) { - uint32 size = 0, count; + uint32 size = 0; + int count; for (count = 0; count < argc; count++) size += strlen(args[count]) + 1; diff --git a/src/kernel/core/vm/vm.c b/src/kernel/core/vm/vm.c index 3ee885ba99..a4d28935f9 100755 --- a/src/kernel/core/vm/vm.c +++ b/src/kernel/core/vm/vm.c @@ -639,8 +639,8 @@ vm_create_anonymous_region(aspace_id aid, const char *name, void **address, return ENOMEM; } -region_id vm_map_physical_memory(aspace_id aid, const char *name, void **address, int addr_type, - addr size, int lock, addr phys_addr) +region_id vm_map_physical_memory(aspace_id aid, const char *name, void **_address, + int addr_type, addr size, int lock, addr phys_addr) { vm_region *region; vm_cache *cache; @@ -679,16 +679,16 @@ region_id vm_map_physical_memory(aspace_id aid, const char *name, void **address cache->scan_skip = 1; vm_cache_acquire_ref(cache_ref, true); - err = map_backing_store(aspace, store, address, 0, size, addr_type, 0, lock, REGION_NO_PRIVATE_MAP, ®ion, name); + err = map_backing_store(aspace, store, _address, 0, size, addr_type, 0, lock, REGION_NO_PRIVATE_MAP, ®ion, name); vm_cache_release_ref(cache_ref); vm_put_aspace(aspace); - if(err < 0) { + if (err < 0) return err; - } // modify the pointer returned to be offset back into the new region // the same way the physical address in was offset - (*address) += map_offset; + *_address = (void *)((addr)*_address + map_offset); + return region->id; }