Lines Matching full:contexts
999 * contexts directory
1013 static void damon_sysfs_contexts_rm_dirs(struct damon_sysfs_contexts *contexts) in damon_sysfs_contexts_rm_dirs() argument
1015 struct damon_sysfs_context **contexts_arr = contexts->contexts_arr; in damon_sysfs_contexts_rm_dirs()
1018 for (i = 0; i < contexts->nr; i++) { in damon_sysfs_contexts_rm_dirs()
1022 contexts->nr = 0; in damon_sysfs_contexts_rm_dirs()
1024 contexts->contexts_arr = NULL; in damon_sysfs_contexts_rm_dirs()
1027 static int damon_sysfs_contexts_add_dirs(struct damon_sysfs_contexts *contexts, in damon_sysfs_contexts_add_dirs() argument
1033 damon_sysfs_contexts_rm_dirs(contexts); in damon_sysfs_contexts_add_dirs()
1041 contexts->contexts_arr = contexts_arr; in damon_sysfs_contexts_add_dirs()
1046 damon_sysfs_contexts_rm_dirs(contexts); in damon_sysfs_contexts_add_dirs()
1051 &damon_sysfs_context_ktype, &contexts->kobj, in damon_sysfs_contexts_add_dirs()
1061 contexts->nr++; in damon_sysfs_contexts_add_dirs()
1066 damon_sysfs_contexts_rm_dirs(contexts); in damon_sysfs_contexts_add_dirs()
1074 struct damon_sysfs_contexts *contexts = container_of(kobj, in nr_contexts_show() local
1077 return sysfs_emit(buf, "%d\n", contexts->nr); in nr_contexts_show()
1083 struct damon_sysfs_contexts *contexts; in nr_contexts_store() local
1089 /* TODO: support multiple contexts per kdamond */ in nr_contexts_store()
1093 contexts = container_of(kobj, struct damon_sysfs_contexts, kobj); in nr_contexts_store()
1096 err = damon_sysfs_contexts_add_dirs(contexts, nr); in nr_contexts_store()
1130 struct damon_sysfs_contexts *contexts; member
1141 struct damon_sysfs_contexts *contexts; in damon_sysfs_kdamond_add_dirs() local
1144 contexts = damon_sysfs_contexts_alloc(); in damon_sysfs_kdamond_add_dirs()
1145 if (!contexts) in damon_sysfs_kdamond_add_dirs()
1148 err = kobject_init_and_add(&contexts->kobj, in damon_sysfs_kdamond_add_dirs()
1150 "contexts"); in damon_sysfs_kdamond_add_dirs()
1152 kobject_put(&contexts->kobj); in damon_sysfs_kdamond_add_dirs()
1155 kdamond->contexts = contexts; in damon_sysfs_kdamond_add_dirs()
1162 damon_sysfs_contexts_rm_dirs(kdamond->contexts); in damon_sysfs_kdamond_rm_dirs()
1163 kobject_put(&kdamond->contexts->kobj); in damon_sysfs_kdamond_rm_dirs()
1388 * worker thread,to safely access the DAMON contexts-internal data. Caller
1398 kdamond->contexts->contexts_arr[0]->schemes, ctx); in damon_sysfs_upd_schemes_stats()
1443 /* TODO: Support multiple contexts per kdamond */ in damon_sysfs_commit_input()
1444 if (kdamond->contexts->nr != 1) in damon_sysfs_commit_input()
1447 param_ctx = damon_sysfs_build_ctx(kdamond->contexts->contexts_arr[0]); in damon_sysfs_commit_input()
1472 /* TODO: Support multiple contexts per kdamond */ in damon_sysfs_commit_schemes_quota_goals()
1473 if (sysfs_kdamond->contexts->nr != 1) in damon_sysfs_commit_schemes_quota_goals()
1477 sysfs_ctx = sysfs_kdamond->contexts->contexts_arr[0]; in damon_sysfs_commit_schemes_quota_goals()
1489 * DAMON contexts-internal data and DAMON sysfs variables.
1497 kdamond->contexts->contexts_arr[0]->schemes, ctx); in damon_sysfs_upd_schemes_effective_quotas()
1506 kdamond->contexts->contexts_arr[0]->attrs->intervals->sample_us = in damon_sysfs_upd_tuned_intervals()
1508 kdamond->contexts->contexts_arr[0]->attrs->intervals->aggr_us = in damon_sysfs_upd_tuned_intervals()
1539 /* TODO: support multiple contexts per kdamond */ in damon_sysfs_turn_damon_on()
1540 if (kdamond->contexts->nr != 1) in damon_sysfs_turn_damon_on()
1547 ctx = damon_sysfs_build_ctx(kdamond->contexts->contexts_arr[0]); in damon_sysfs_turn_damon_on()
1597 sysfs_kdamond->contexts->contexts_arr[0]->schemes, in damon_sysfs_schemes_tried_regions_upd_one()
1619 sysfs_kdamond->contexts->contexts_arr[0]->schemes); in damon_sysfs_update_schemes_tried_regions()
1656 kdamond->contexts->contexts_arr[0]->schemes); in damon_sysfs_handle_cmd()