| /mm/damon/ |
| A D | sysfs-schemes.c | 339 if (filter) in damon_sysfs_scheme_filter_alloc() 341 return filter; in damon_sysfs_scheme_filter_alloc() 433 filter->handle_layer, in type_store() 488 filter->allow = allow; in allow_store() 499 filter->memcg_path ? filter->memcg_path : ""); in memcg_path_show() 514 kfree(filter->memcg_path); in memcg_path_store() 620 kfree(filter); in damon_sysfs_scheme_filter_release() 724 if (!filter) { in damon_sysfs_scheme_filters_add_dirs() 738 filters_arr[i] = filter; in damon_sysfs_scheme_filters_add_dirs() 2457 if (!filter) in damon_sysfs_add_scheme_filters() [all …]
|
| A D | paddr.c | 105 struct damos_filter *filter; in damos_pa_filter_out() local 110 damos_for_each_ops_filter(filter, scheme) { in damos_pa_filter_out() 111 if (damos_folio_filter_match(filter, folio)) in damos_pa_filter_out() 112 return !filter->allow; in damos_pa_filter_out() 134 struct damos_filter *filter; in damon_pa_pageout() local 138 damos_for_each_ops_filter(filter, s) { in damon_pa_pageout() 139 if (filter->type == DAMOS_FILTER_TYPE_YOUNG) { in damon_pa_pageout() 145 filter = damos_new_filter( in damon_pa_pageout() 147 if (!filter) in damon_pa_pageout() 149 damos_add_filter(s, filter); in damon_pa_pageout() [all …]
|
| A D | ops-common.c | 252 bool damos_folio_filter_match(struct damos_filter *filter, struct folio *folio) in damos_folio_filter_match() argument 258 switch (filter->type) { in damos_folio_filter_match() 271 matched = filter->memcg_id == mem_cgroup_id(memcg); in damos_folio_filter_match() 281 matched = filter->sz_range.min <= folio_sz && in damos_folio_filter_match() 282 folio_sz <= filter->sz_range.max; in damos_folio_filter_match() 291 return matched == filter->matching; in damos_folio_filter_match()
|
| A D | core.c | 271 struct damos_filter *filter; in damos_new_filter() local 273 filter = kmalloc(sizeof(*filter), GFP_KERNEL); in damos_new_filter() 274 if (!filter) in damos_new_filter() 276 filter->type = type; in damos_new_filter() 277 filter->matching = matching; in damos_new_filter() 278 filter->allow = allow; in damos_new_filter() 280 return filter; in damos_new_filter() 843 return filter; in damos_nth_filter() 1668 switch (filter->type) { in damos_filter_match() 1716 if (filter->allow) in damos_filter_out() [all …]
|
| A D | reclaim.c | 190 struct damos_filter *filter; in damon_reclaim_apply_parameters() local 224 filter = damos_new_filter(DAMOS_FILTER_TYPE_ANON, true, false); in damon_reclaim_apply_parameters() 225 if (!filter) in damon_reclaim_apply_parameters() 227 damos_add_filter(scheme, filter); in damon_reclaim_apply_parameters()
|
| A D | vaddr.c | 614 static bool damos_va_filter_young_match(struct damos_filter *filter, in damos_va_filter_young_match() argument 633 return young == filter->matching; in damos_va_filter_young_match() 640 struct damos_filter *filter; in damos_va_filter_out() local 646 damos_for_each_ops_filter(filter, scheme) { in damos_va_filter_out() 653 if (filter->type == DAMOS_FILTER_TYPE_YOUNG) in damos_va_filter_out() 654 matched = damos_va_filter_young_match(filter, folio, in damos_va_filter_out() 657 matched = damos_folio_filter_match(filter, folio); in damos_va_filter_out() 660 return !filter->allow; in damos_va_filter_out()
|
| A D | ops-common.h | 22 bool damos_folio_filter_match(struct damos_filter *filter, struct folio *folio);
|
| /mm/ |
| A D | show_mem.c | 180 static void show_free_areas(unsigned int filter, nodemask_t *nodemask, int max_zone_idx) in show_free_areas() argument 190 if (show_mem_node_skip(filter, zone_to_nid(zone), nodemask)) in show_free_areas() 227 if (show_mem_node_skip(filter, pgdat->node_id, nodemask)) in show_free_areas() 290 if (show_mem_node_skip(filter, zone_to_nid(zone), nodemask)) in show_free_areas() 355 if (show_mem_node_skip(filter, zone_to_nid(zone), nodemask)) in show_free_areas() 385 if (show_mem_node_skip(filter, nid, nodemask)) in show_free_areas() 395 void __show_mem(unsigned int filter, nodemask_t *nodemask, int max_zone_idx) in __show_mem() argument 401 show_free_areas(filter, nodemask, max_zone_idx); in __show_mem()
|
| A D | vmscan.c | 2839 unsigned long *filter; in test_bloom_filter() local 2843 if (!filter) in test_bloom_filter() 2848 return test_bit(key[0], filter) && test_bit(key[1], filter); in test_bloom_filter() 2855 unsigned long *filter; in update_bloom_filter() local 2859 if (!filter) in update_bloom_filter() 2864 if (!test_bit(key[0], filter)) in update_bloom_filter() 2865 set_bit(key[0], filter); in update_bloom_filter() 2866 if (!test_bit(key[1], filter)) in update_bloom_filter() 2867 set_bit(key[1], filter); in update_bloom_filter() 2872 unsigned long *filter; in reset_bloom_filter() local [all …]
|
| A D | page_alloc.c | 3894 unsigned int filter = SHOW_MEM_FILTER_NODES; in warn_alloc_show_mem() local 3904 filter &= ~SHOW_MEM_FILTER_NODES; in warn_alloc_show_mem() 3906 filter &= ~SHOW_MEM_FILTER_NODES; in warn_alloc_show_mem() 3908 __show_mem(filter, nodemask, gfp_zone(gfp_mask)); in warn_alloc_show_mem()
|
| /mm/damon/tests/ |
| A D | core-kunit.h | 412 struct damos_filter *filter; in damos_test_new_filter() local 414 filter = damos_new_filter(DAMOS_FILTER_TYPE_ANON, true, false); in damos_test_new_filter() 415 KUNIT_EXPECT_EQ(test, filter->type, DAMOS_FILTER_TYPE_ANON); in damos_test_new_filter() 416 KUNIT_EXPECT_EQ(test, filter->matching, true); in damos_test_new_filter() 417 KUNIT_EXPECT_PTR_EQ(test, filter->list.prev, &filter->list); in damos_test_new_filter() 418 KUNIT_EXPECT_PTR_EQ(test, filter->list.next, &filter->list); in damos_test_new_filter() 419 damos_destroy_filter(filter); in damos_test_new_filter()
|