|
@@ -207,7 +207,7 @@ Region* Process::allocate_region(VirtualAddress vaddr, size_t size, const String
|
|
|
return allocate_region(range, name, prot, commit);
|
|
|
}
|
|
|
|
|
|
-Region* Process::allocate_region_with_vmobject(const Range& range, NonnullRefPtr<VMObject> vmobject, size_t offset_in_vmobject, const String& name, int prot, bool user_accessible)
|
|
|
+Region* Process::allocate_region_with_vmobject(const Range& range, NonnullRefPtr<VMObject> vmobject, size_t offset_in_vmobject, const String& name, int prot)
|
|
|
{
|
|
|
ASSERT(range.is_valid());
|
|
|
size_t end_in_vmobject = offset_in_vmobject + range.size();
|
|
@@ -224,21 +224,17 @@ Region* Process::allocate_region_with_vmobject(const Range& range, NonnullRefPtr
|
|
|
return nullptr;
|
|
|
}
|
|
|
offset_in_vmobject &= PAGE_MASK;
|
|
|
- Region* region;
|
|
|
- if (user_accessible)
|
|
|
- region = &add_region(Region::create_user_accessible(range, move(vmobject), offset_in_vmobject, name, prot_to_region_access_flags(prot)));
|
|
|
- else
|
|
|
- region = &add_region(Region::create_kernel_only(range, move(vmobject), offset_in_vmobject, name, prot_to_region_access_flags(prot)));
|
|
|
- region->map(page_directory());
|
|
|
- return region;
|
|
|
+ auto& region = add_region(Region::create_user_accessible(range, move(vmobject), offset_in_vmobject, name, prot_to_region_access_flags(prot)));
|
|
|
+ region.map(page_directory());
|
|
|
+ return ®ion;
|
|
|
}
|
|
|
|
|
|
-Region* Process::allocate_region_with_vmobject(VirtualAddress vaddr, size_t size, NonnullRefPtr<VMObject> vmobject, size_t offset_in_vmobject, const String& name, int prot, bool user_accessible)
|
|
|
+Region* Process::allocate_region_with_vmobject(VirtualAddress vaddr, size_t size, NonnullRefPtr<VMObject> vmobject, size_t offset_in_vmobject, const String& name, int prot)
|
|
|
{
|
|
|
auto range = allocate_range(vaddr, size);
|
|
|
if (!range.is_valid())
|
|
|
return nullptr;
|
|
|
- return allocate_region_with_vmobject(range, move(vmobject), offset_in_vmobject, name, prot, user_accessible);
|
|
|
+ return allocate_region_with_vmobject(range, move(vmobject), offset_in_vmobject, name, prot);
|
|
|
}
|
|
|
|
|
|
bool Process::deallocate_region(Region& region)
|