Function report |
Source Code:fs\dax.c |
Create Date:2022-07-28 20:23:14 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
home page | Tree |
Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:Walk all mappings of a given index of a file and writeprotect them
Proto:static void dax_entry_mkclean(struct address_space *mapping, unsigned long index, unsigned long pfn)
Type:void
Parameter:
Type | Parameter | Name |
---|---|---|
struct address_space * | mapping | |
unsigned long | index | |
unsigned long | pfn |
784 | i_mmap_lock_read(mapping) |
789 | cond_resched() |
791 | If Not (Flags, see mm.h. & VM_SHARED) Then Continue |
794 | address = pgoff_address(index, vma) |
801 | If follow_pte_pmd(The address space we belong to. , address, & range, & ptep, & pmdp, & ptl) Then Continue |
812 | If pmdp Then |
828 | spin_unlock(ptl) |
829 | Else |
830 | If pfn != pte_pfn( * ptep) Then Go to unlock_pte |
832 | If Not The following only work if pte_present() is true.* Undefined behaviour if not.. && Not pte_write( * ptep) Then Go to unlock_pte |
835 | flush_cache_page(vma, address, pfn) |
836 | pte = ptep_clear_flush(vma, address, ptep) |
837 | pte = pte_wrprotect(pte) |
838 | pte = pte_mkclean(pte) |
840 | unlock_pte : |
841 | pte_unmap_unlock(ptep, ptl) |
Name | Describe |
---|---|
dax_writeback_one |
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 |