Lines Matching refs:page

17  * - negative errno on page migration failure;
18 * - zero on page migration success;
24 * struct movable_operations - Driver page migration
26 * The VM calls this function to prepare the page to be moved. The page
28 * return ``true`` if the page is movable and ``false`` if it is not
30 * page->lru field, so the driver must preserve any information which
35 * @src page. The driver should copy the contents of the
36 * @src page to the @dst page and set up the fields of @dst page.
38 * If page migration is successful, the driver should call
40 * If the driver cannot migrate the page at the moment, it can return
48 * If migration fails on the isolated page, the VM informs the driver
49 * that the page is no longer a candidate for migration by calling
50 * this function. The driver should put the isolated page back into
54 bool (*isolate_page)(struct page *, isolate_mode_t);
55 int (*migrate_page)(struct page *dst, struct page *src,
57 void (*putback_page)(struct page *);
74 bool isolate_movable_page(struct page *page, isolate_mode_t mode);
95 static inline bool isolate_movable_page(struct page *page, isolate_mode_t mode)
107 bool PageMovable(struct page *page);
108 void __SetPageMovable(struct page *page, const struct movable_operations *ops);
109 void __ClearPageMovable(struct page *page);
111 static inline bool PageMovable(struct page *page) { return false; }
112 static inline void __SetPageMovable(struct page *page,
116 static inline void __ClearPageMovable(struct page *page)
123 return PageMovable(&folio->page);
136 const struct movable_operations *page_movable_ops(struct page *page)
138 VM_BUG_ON(!__PageMovable(page));
141 ((unsigned long)page->mapping - PAGE_MAPPING_MOVABLE);
167 static inline struct page *migrate_pfn_to_page(unsigned long mpfn)
203 * Set to the owner value also stored in page->pgmap->owner for
214 * Set to vmf->page if this is being called to migrate a page as part of
217 struct page *fault_page;