1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
  | /* SPDX-License-Identifier: GPL-2.0 */ 
 |  #ifndef _XEN_MMU_H 
 |    
 |  #include <linux/linkage.h> 
 |  #include <asm/page.h> 
 |    
 |  enum pt_level { 
 |      PT_PGD, 
 |      PT_P4D, 
 |      PT_PUD, 
 |      PT_PMD, 
 |      PT_PTE 
 |  }; 
 |    
 |    
 |  bool __set_phys_to_machine(unsigned long pfn, unsigned long mfn); 
 |    
 |  void set_pte_mfn(unsigned long vaddr, unsigned long pfn, pgprot_t flags); 
 |    
 |  pte_t xen_ptep_modify_prot_start(struct mm_struct *mm, unsigned long addr, pte_t *ptep); 
 |  void  xen_ptep_modify_prot_commit(struct mm_struct *mm, unsigned long addr, 
 |                    pte_t *ptep, pte_t pte); 
 |    
 |  unsigned long xen_read_cr2_direct(void); 
 |    
 |  extern void xen_init_mmu_ops(void); 
 |  extern void xen_hvm_init_mmu_ops(void); 
 |  #endif    /* _XEN_MMU_H */ 
 |  
  |