Re: Pagefault return path
Espen Skoglund <[email protected]>
| Newsgroups | gmane.comp.micro-kernel.l4.l4ka.general |
|---|---|
| Message-ID | <[email protected]> |
[Martin Christian] > Hi! > I'm currently looking at the execution path taken by the kernel on a > page fault. It's more or less clear to me how it enters the kernel > and sends a pagefault IPC. However, the return path taken where the > user mode Pager responds is a bit more hidden. I was looking for > something like "if IPC == pagefault answer) then ..." in the IPC > code. Maybe someone could point out the relevant areas?! The places > where the book keeping is done - or more precisely where a > mapped/granted page is inserted into the page dictionary of an > address space. The reply to the pagefault IPC is not treated specially. This keeps the IPC code smaller and more efficient. The reply takes the regular IPC path, and the handling of map items is done in extended_transfer() in ipcx.cc. The manipulation of the page tables themselves is done in generic/linear_ptab_walker.cc. eSk