Discussion:
TLB fault inside vm_fault
(too old to reply)
Paolo P
2011-07-21 11:37:18 UTC
Permalink
So we are using VOP_READ and uiomovezero to load a page in memory before
updating the TLB but as the title says, it will make an infinite nesting
of TLB faults so isn't it better to update the TLB before loading the
page or is there another way to load a page?
cs350
2011-07-21 20:43:02 UTC
Permalink
When you setup the uio for getting the contents of a page, you can either
use userspace virtual addresses or kernelspace virtual addresses. In the
first case, the transaction will require the appropriate TLB translation
to already be loaded. In the second case, the TLB is not involved.

If you use userspace virtual addresses, you should update the TLB before
loading the page, but in that case you should also be careful about the
page's readonly status (as enforced by the TLB entry).

-Alex
Post by Paolo P
So we are using VOP_READ and uiomovezero to load a page in memory before
updating the TLB but as the title says, it will make an infinite nesting of
TLB faults so isn't it better to update the TLB before loading the page or is
there another way to load a page?
Loading...