address returned by arch_get_unmapped_area() to contain a linear address that is part of another process’s address space.
In addition to this process compartmentalization, the do_mmap() routine also makes sure that when a new memory region is inserted it does not cause the size of the process address space to exceed the threshold set by the system parameter rlimit. The do_mmap() function only allocates a new valid linear address to the address space of a process. Actual
The following diagram describes a simplified view of what occurs when a process tries to increase its address space and, if successful, tries to access the newly allocated linear address.
Figure 5-68: Object reuse handling while allocating new linear address
129