2021-11-05 13:46:53 -07:00
|
|
|
/* SPDX-License-Identifier: GPL-2.0 */
|
|
|
|
/*
|
2025-05-30 13:31:15 +08:00
|
|
|
* Common Code for Data Access Monitoring
|
2021-11-05 13:46:53 -07:00
|
|
|
*
|
|
|
|
* Author: SeongJae Park <sj@kernel.org>
|
|
|
|
*/
|
|
|
|
|
|
|
|
#include <linux/damon.h>
|
|
|
|
|
2022-12-30 15:08:44 +08:00
|
|
|
struct folio *damon_get_folio(unsigned long pfn);
|
2021-11-05 13:46:53 -07:00
|
|
|
|
2023-06-02 10:29:47 +01:00
|
|
|
void damon_ptep_mkold(pte_t *pte, struct vm_area_struct *vma, unsigned long addr);
|
|
|
|
void damon_pmdp_mkold(pmd_t *pmd, struct vm_area_struct *vma, unsigned long addr);
|
2025-07-08 19:59:42 -05:00
|
|
|
void damon_folio_mkold(struct folio *folio);
|
|
|
|
bool damon_folio_young(struct folio *folio);
|
2021-11-05 13:47:37 -07:00
|
|
|
|
2022-09-17 21:56:54 +08:00
|
|
|
int damon_cold_score(struct damon_ctx *c, struct damon_region *r,
|
2021-11-05 13:47:37 -07:00
|
|
|
struct damos *s);
|
2022-06-13 19:22:56 +00:00
|
|
|
int damon_hot_score(struct damon_ctx *c, struct damon_region *r,
|
|
|
|
struct damos *s);
|
2025-07-08 19:59:38 -05:00
|
|
|
|
2025-07-08 19:59:42 -05:00
|
|
|
bool damos_folio_filter_match(struct damos_filter *filter, struct folio *folio);
|
2025-07-08 19:59:38 -05:00
|
|
|
unsigned long damon_migrate_pages(struct list_head *folio_list, int target_nid);
|