Lines Matching full:page

26  * Minimum page order trackable by hugetlb cgroup.
28 * The second tail page (hpage[SUBPAGE_INDEX_CGROUP]) is the fault
29 * usage cgroup. The third tail page (hpage[SUBPAGE_INDEX_CGROUP_RSVD])
70 __hugetlb_cgroup_from_page(struct page *page, bool rsvd) in __hugetlb_cgroup_from_page() argument
72 VM_BUG_ON_PAGE(!PageHuge(page), page); in __hugetlb_cgroup_from_page()
74 if (compound_order(page) < HUGETLB_CGROUP_MIN_ORDER) in __hugetlb_cgroup_from_page()
77 return (void *)page_private(page + SUBPAGE_INDEX_CGROUP_RSVD); in __hugetlb_cgroup_from_page()
79 return (void *)page_private(page + SUBPAGE_INDEX_CGROUP); in __hugetlb_cgroup_from_page()
82 static inline struct hugetlb_cgroup *hugetlb_cgroup_from_page(struct page *page) in hugetlb_cgroup_from_page() argument
84 return __hugetlb_cgroup_from_page(page, false); in hugetlb_cgroup_from_page()
88 hugetlb_cgroup_from_page_rsvd(struct page *page) in hugetlb_cgroup_from_page_rsvd() argument
90 return __hugetlb_cgroup_from_page(page, true); in hugetlb_cgroup_from_page_rsvd()
93 static inline void __set_hugetlb_cgroup(struct page *page, in __set_hugetlb_cgroup() argument
96 VM_BUG_ON_PAGE(!PageHuge(page), page); in __set_hugetlb_cgroup()
98 if (compound_order(page) < HUGETLB_CGROUP_MIN_ORDER) in __set_hugetlb_cgroup()
101 set_page_private(page + SUBPAGE_INDEX_CGROUP_RSVD, in __set_hugetlb_cgroup()
104 set_page_private(page + SUBPAGE_INDEX_CGROUP, in __set_hugetlb_cgroup()
108 static inline void set_hugetlb_cgroup(struct page *page, in set_hugetlb_cgroup() argument
111 __set_hugetlb_cgroup(page, h_cg, false); in set_hugetlb_cgroup()
114 static inline void set_hugetlb_cgroup_rsvd(struct page *page, in set_hugetlb_cgroup_rsvd() argument
117 __set_hugetlb_cgroup(page, h_cg, true); in set_hugetlb_cgroup_rsvd()
150 struct page *page);
153 struct page *page);
155 struct page *page);
157 struct page *page);
173 extern void hugetlb_cgroup_migrate(struct page *oldhpage,
174 struct page *newhpage);
184 static inline struct hugetlb_cgroup *hugetlb_cgroup_from_page(struct page *page) in hugetlb_cgroup_from_page() argument
190 hugetlb_cgroup_from_page_resv(struct page *page) in hugetlb_cgroup_from_page_resv() argument
196 hugetlb_cgroup_from_page_rsvd(struct page *page) in hugetlb_cgroup_from_page_rsvd() argument
201 static inline void set_hugetlb_cgroup(struct page *page, in set_hugetlb_cgroup() argument
206 static inline void set_hugetlb_cgroup_rsvd(struct page *page, in set_hugetlb_cgroup_rsvd() argument
245 struct page *page) in hugetlb_cgroup_commit_charge() argument
252 struct page *page) in hugetlb_cgroup_commit_charge_rsvd() argument
257 struct page *page) in hugetlb_cgroup_uncharge_page() argument
263 struct page *page) in hugetlb_cgroup_uncharge_page_rsvd() argument
288 static inline void hugetlb_cgroup_migrate(struct page *oldhpage, in hugetlb_cgroup_migrate()
289 struct page *newhpage) in hugetlb_cgroup_migrate()