| Function report | 
| Source Code: mm\memory.c | Create Date:2022-07-28 14:43:31 | 
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick | 
| home page | Tree | 
| Annotation kernel can get tool activity | Download SCCT | Chinese | 
Name:These routines also need to handle stuff like marking pages dirty* and/or accessed for architectures that don't do it in hardware (most* RISC architectures)
Proto:static vm_fault_t handle_pte_fault(struct vm_fault *vmf)
Type:vm_fault_t
Parameter:
| Type | Parameter | Name | 
|---|---|---|
| struct vm_fault * | vmf | 
| 3984 | Else | 
| 3994 | Pointer to pte entry matching* the 'address'. NULL if the page* table hasn't been allocated. = pte_offset_map(Pointer to pmd entry matching* the 'address' , Faulting virtual address ) | 
| 3995 | Value of PTE at the time of fault = Pointer to pte entry matching* the 'address'. NULL if the page* table hasn't been allocated. | 
| 4006 | If pte_none(Value of PTE at the time of fault ) Then | 
| 4025 | Page table lock.* Protects pte page table if 'pte'* is not NULL, otherwise pmd. = pte_lockptr(The address space we belong to. , Pointer to pmd entry matching* the 'address' ) | 
| 4028 | If Value for the false possibility is greater at compile time(!pte_same( * Pointer to pte entry matching* the 'address'. NULL if the page* table hasn't been allocated., entry)) Then Go to unlock | 
| 4030 | If FAULT_FLAG_xxx flags & Fault was a write access Then | 
| 4033 | entry = pte_mkdirty(entry) | 
| 4035 | entry = pte_mkyoung(entry) | 
| 4039 | Else | 
| 4049 | unlock : | 
| 4050 | pte_unmap_unlock(Pointer to pte entry matching* the 'address'. NULL if the page* table hasn't been allocated., Page table lock.* Protects pte page table if 'pte'* is not NULL, otherwise pmd.) | 
| 4051 | Return 0 | 
| Name | Describe | 
|---|---|
| __handle_mm_fault | By the time we get here, we already hold the mm semaphore* The mmap_sem may have been released depending on flags and our* return value. See filemap_fault() and __lock_page_or_retry(). | 
| Source code conversion tool public plug-in interface | X | 
|---|---|
| Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |