NAME | SYNOPSIS | API RESTRICTIONS | FEATURES | DESCRIPTION | RETURN VALUE | ERRORS | RESTRICTIONS | ATTRIBUTES
#include <mem/chMem.h>int vmPhysAddr(KnCap *actorcap, VmAddr virtaddress, PhAddr *physaddr);
The function or functions documented here may not be used safely in all application contexts with all APIs provided in the ChorusOS 5.0 product.
See API(5FEA) for details.
MEM_PROTECTED, MEM_VIRTUAL
The vmPhysAddr system call returns to physaddr the physical address mapped to the virtual address virtaddress in the target actor address space.
The target actor is specified by actorcap - a pointer to the actor capability. If actorcap is K_MYACTOR, the address space of the current actor is used. If actorcap is K_SVACTOR, the supervisor address space is used.
The caller must insure that a physical address was effectively mapped to the target virtual address before invoking vmPhysAddr, and that the same physical address will always be mapped to the target virtual address during the invocation.
The vmPhysAddr call can be called from interrupt level.
If successful K_OK is returned, otherwise a negative error code is returned.
Some of the arguments provided are outside the caller's address space.
An inconsistent actor capability was provided.
actorcap does not specify a reachable actor.
The target actor and the current actor must be located on the same site.
See attributes(5) for descriptions of the following attributes:
ATTRIBUTE TYPE | ATTRIBUTE VALUE |
---|---|
Interface Stability | Evolving |
NAME | SYNOPSIS | API RESTRICTIONS | FEATURES | DESCRIPTION | RETURN VALUE | ERRORS | RESTRICTIONS | ATTRIBUTES