Changeset 23 for trunk/kernel/mm/vmm.h
- Timestamp:
- Jun 18, 2017, 10:06:41 PM (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/kernel/mm/vmm.h
r18 r23 4 4 * Authors Ghassan Almaless (2008,2009,2010,2011, 2012) 5 5 * Mohamed Lamine Karaoui (2015) 6 * Alain Greiner (2016 )6 * Alain Greiner (2016,2017) 7 7 * 8 8 * Copyright (c) UPMC Sorbonne Universites … … 103 103 rwlock_t vsegs_lock; /*! lock protecting the vsegs list & radix tree */ 104 104 list_entry_t vsegs_root; /*! all vsegs in same process and same cluster */ 105 uint32_t vsegs_nr; /*! total number of vsegs */ 106 105 uint32_t vsegs_nr; /*! total number of local vsegs */ 107 106 grdxt_t grdxt; /*! embedded generic vsegs radix tree (key is vpn) */ 108 107 … … 110 109 111 110 stack_mgr_t stack_mgr; /*! embedded STACK vsegs allocator */ 112 113 111 mmap_mgr_t mmap_mgr; /*! embedded MMAP vsegs allocator */ 114 112 … … 158 156 159 157 /********************************************************************************************* 158 * This function copies the content of a source VMM to a destination VMM. 159 ********************************************************************************************* 160 * @ dst_process : pointer on destination process descriptor. 161 * @ src_process : pointer on source process descriptor. 162 * @ return 0 if success / return ENOMEM if failure. 163 ********************************************************************************************/ 164 error_t vmm_copy( struct process_s * dst_process, 165 struct process_s * src_process ); 166 167 /********************************************************************************************* 160 168 * This function removes all vsegs registered in in a virtual memory manager, 161 169 * and releases the memory allocated to the local generic page table. 162 170 ********************************************************************************************* 163 * @ vmm: pointer on process descriptor.171 * @ process : pointer on process descriptor. 164 172 ********************************************************************************************/ 165 173 void vmm_destroy( struct process_s * process ); … … 265 273 266 274 /********************************************************************************************* 267 * This function is called by the architecture specific exception handler when a268 * page fault has been detected in a given cluster.275 * This function is called by the generic exception handler when a page fault 276 * has been detected in a given cluster. 269 277 * If the local cluster is not the reference cluster, it send a RPC_VMM_GET_PTE 270 278 * to the reference cluster to get the missing PTE attributes and PPN, and update … … 305 313 * This function makes the virtual to physical address translation, using the calling 306 314 * process page table. It uses identity mapping if required by the ident flag. 307 * This address translation is required to configure the devices308 * that have a DMA capability, or to implement the software L2/L3 cache cohérence,309 * using the MMC devicesynchronisation primitives.310 * WARNING : the <ident> value must be defined by the CONFIG_KERNEL_IDENT parameter.315 * This address translation is required to configure the peripherals having a DMA 316 * capability, or to implement the software L2/L3 cache cohérence, using the MMC device 317 * synchronisation primitives. 318 * WARNING : the <ident> value must be defined by the CONFIG_KERNEL_IDENTITY_MAP parameter. 311 319 ********************************************************************************************* 312 320 * @ ident : [in] uses identity mapping if true. … … 321 329 322 330 /********************************************************************************************* 323 * Pas a sa place ici [AG]324 ********************************************************************************************/325 int sys_mmap( mmap_attr_t * mattr );326 327 /*********************************************************************************************328 331 ********************************************************************************************/ 329 332 int sys_madvise( void * start,
Note: See TracChangeset
for help on using the changeset viewer.