xref: /linux/mm/damon/ops-common.h (revision 22c55fb9eb92395d999b8404d73e58540d11bdd8)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  * Common Code for Data Access Monitoring
4  *
5  * Author: SeongJae Park <sj@kernel.org>
6  */
7 
8 #include <linux/damon.h>
9 
10 struct folio *damon_get_folio(unsigned long pfn);
11 
12 void damon_ptep_mkold(pte_t *pte, struct vm_area_struct *vma, unsigned long addr);
13 void damon_pmdp_mkold(pmd_t *pmd, struct vm_area_struct *vma, unsigned long addr);
14 void damon_folio_mkold(struct folio *folio);
15 bool damon_folio_young(struct folio *folio);
16 
17 int damon_cold_score(struct damon_ctx *c, struct damon_region *r,
18 			struct damos *s);
19 int damon_hot_score(struct damon_ctx *c, struct damon_region *r,
20 			struct damos *s);
21 
22 bool damos_folio_filter_match(struct damos_filter *filter, struct folio *folio);
23 unsigned long damon_migrate_pages(struct list_head *folio_list, int target_nid);
24