On Sat, Apr 6, 2013 at 9:23 PM, Terry Hsu <terry.sh...@gmail.com> wrote:
> Is there any available resource that explains how user-mode-linux maps the
> pages of a task in UML to the host kernel?

The code...? ;)
UML receives a SIGEGV on the host side if a page is not mapped.
The SIGEGV handler then installs the mapping using mmap().

> In my UML, I modified a task's page table when forking it. Then I ran into a
> situation where the page fault happens over and over again for the same
> address in the forked task. I use gdb debugger and find out that when the
> page fault happens for the first time, the kernel calls do_wp_page() to
> fault in the page and marks the page present. This should prevent the next
> page fault for the same address from happening again. I checked the PTE in
> UML, they are marked as present so is it possible that the page is not being
> allocated properly on the host kernel so that the page fault keeps happening
> for the same address even though UML thinks the page is present.
>
> Any suggestions?

If the same fault happens over and over UML (on the host side) seems
unable to fix the fault.
Check the return values of mmap()....

Thanks,
//richard

------------------------------------------------------------------------------
Minimize network downtime and maximize team effectiveness.
Reduce network management and security costs.Learn how to hire 
the most talented Cisco Certified professionals. Visit the 
Employer Resources Portal
http://www.cisco.com/web/learning/employer_resources/index.html
_______________________________________________
User-mode-linux-devel mailing list
User-mode-linux-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel

Reply via email to