pgtable_uffd.h 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. #ifndef _ASM_GENERIC_PGTABLE_UFFD_H
  2. #define _ASM_GENERIC_PGTABLE_UFFD_H
  3. #ifndef CONFIG_HAVE_ARCH_USERFAULTFD_WP
  4. static __always_inline int pte_uffd_wp(pte_t pte)
  5. {
  6. return 0;
  7. }
  8. static __always_inline int pmd_uffd_wp(pmd_t pmd)
  9. {
  10. return 0;
  11. }
  12. static __always_inline pte_t pte_mkuffd_wp(pte_t pte)
  13. {
  14. return pte;
  15. }
  16. static __always_inline pmd_t pmd_mkuffd_wp(pmd_t pmd)
  17. {
  18. return pmd;
  19. }
  20. static __always_inline pte_t pte_clear_uffd_wp(pte_t pte)
  21. {
  22. return pte;
  23. }
  24. static __always_inline pmd_t pmd_clear_uffd_wp(pmd_t pmd)
  25. {
  26. return pmd;
  27. }
  28. static __always_inline pte_t pte_swp_mkuffd_wp(pte_t pte)
  29. {
  30. return pte;
  31. }
  32. static __always_inline int pte_swp_uffd_wp(pte_t pte)
  33. {
  34. return 0;
  35. }
  36. static __always_inline pte_t pte_swp_clear_uffd_wp(pte_t pte)
  37. {
  38. return pte;
  39. }
  40. static inline pmd_t pmd_swp_mkuffd_wp(pmd_t pmd)
  41. {
  42. return pmd;
  43. }
  44. static inline int pmd_swp_uffd_wp(pmd_t pmd)
  45. {
  46. return 0;
  47. }
  48. static inline pmd_t pmd_swp_clear_uffd_wp(pmd_t pmd)
  49. {
  50. return pmd;
  51. }
  52. #endif /* CONFIG_HAVE_ARCH_USERFAULTFD_WP */
  53. #endif /* _ASM_GENERIC_PGTABLE_UFFD_H */