Ignore:
Timestamp:
Nov 1, 2018, 12:39:27 PM (3 years ago)
Author:
alain
Message:

Modify the GPT (Generic Page Table) API to support remote accesses,
in order to improve page faults and COW handling.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/hal/generic/hal_gpt.h

    r457 r587  
    126126
    127127/****************************************************************************************
    128  * This function map a local GPT entry identified by its VPN, from values defined
    129  * by the ppn and attr arguments. It allocates physical memory for the local generic
    130  * page table itself if required.
     128 * This function map a - local or remote - GPT entry identified by its VPN, from values
     129 * defined by the <ppn> and <attr> arguments. It allocates physical memory in remote
     130 * cluster for the GPT PT2, using a RPC_PMEM_GET_PAGES, if required.
    131131 ****************************************************************************************
    132132 * @ gpt       : [in] pointer on the page table
     
    136136 * @ returns 0 if success / returns ENOMEM if error
    137137 ***************************************************************************************/
    138 error_t hal_gpt_set_pte( gpt_t    * gpt,
     138error_t hal_gpt_set_pte( xptr_t     gpt_xp,
    139139                         vpn_t      vpn,
    140140                         uint32_t   attr,
     
    143143/****************************************************************************************
    144144 * This function unmaps a page table entry identified by the <vpn> argument in the
    145  * local page table identified by the <gpt> argument.
     145 * local GPT identified by the <gpt> argument.
    146146 * It does NOT release the physical memory allocated for the unmapped page.
    147147 ****************************************************************************************
     
    153153
    154154/****************************************************************************************
    155  * This function returns in the <attr> and <ppn> arguments the current values
    156  * stored in a GPT entry, identified by the <gpt> and <vpn> arguments.
    157  ****************************************************************************************
    158  * @ gpt_xp    : [in]  pointer on the page table
     155 * This function returns in the <attr> and <ppn> arguments the current values stored
     156 * in a -local or remote - GPT entry, identified by the <gpt> and <vpn> arguments.
     157 ****************************************************************************************
     158 * @ gpt_xp    : [in]  extended pointer on the page table
    159159 * @ vpn       : [in]  virtual page number
    160160 * @ attr      : [out] generic attributes
    161161 * @ ppn       : [out] physical page number
    162162 ***************************************************************************************/
    163 void hal_gpt_get_pte( gpt_t    * gpt,
     163void hal_gpt_get_pte( xptr_t     gpt_xp,
    164164                      vpn_t      vpn,
    165165                      uint32_t * attr,
Note: See TracChangeset for help on using the changeset viewer.