Home
last modified time | relevance | path

Searched refs:kdamond (Results 1 - 6 of 6) sorted by relevance

/kernel/linux/linux-6.6/mm/damon/
H A Dsysfs.c900 /* TODO: support multiple contexts per kdamond */ in nr_contexts_store()
936 * kdamond directory
950 static int damon_sysfs_kdamond_add_dirs(struct damon_sysfs_kdamond *kdamond) in damon_sysfs_kdamond_add_dirs() argument
960 &damon_sysfs_contexts_ktype, &kdamond->kobj, in damon_sysfs_kdamond_add_dirs()
966 kdamond->contexts = contexts; in damon_sysfs_kdamond_add_dirs()
971 static void damon_sysfs_kdamond_rm_dirs(struct damon_sysfs_kdamond *kdamond) in damon_sysfs_kdamond_rm_dirs() argument
973 damon_sysfs_contexts_rm_dirs(kdamond->contexts); in damon_sysfs_kdamond_rm_dirs()
974 kobject_put(&kdamond->contexts->kobj); in damon_sysfs_kdamond_rm_dirs()
982 running = ctx->kdamond != NULL; in damon_sysfs_ctx_running()
988 * enum damon_sysfs_cmd - Commands for a specific kdamond
1047 struct damon_sysfs_kdamond *kdamond; global() member
1056 struct damon_sysfs_kdamond *kdamond = container_of(kobj, state_show() local
1233 struct damon_sysfs_kdamond *kdamond; damon_sysfs_before_terminate() local
1268 damon_sysfs_upd_schemes_stats(struct damon_sysfs_kdamond *kdamond) damon_sysfs_upd_schemes_stats() argument
1279 damon_sysfs_upd_schemes_regions_start( struct damon_sysfs_kdamond *kdamond, bool total_bytes_only) damon_sysfs_upd_schemes_regions_start() argument
1291 damon_sysfs_upd_schemes_regions_stop( struct damon_sysfs_kdamond *kdamond) damon_sysfs_upd_schemes_regions_stop() argument
1301 damon_sysfs_clear_schemes_regions( struct damon_sysfs_kdamond *kdamond) damon_sysfs_clear_schemes_regions() argument
1312 damon_sysfs_kdamond_running( struct damon_sysfs_kdamond *kdamond) damon_sysfs_kdamond_running() argument
1342 damon_sysfs_commit_input(struct damon_sysfs_kdamond *kdamond) damon_sysfs_commit_input() argument
1363 struct damon_sysfs_kdamond *kdamond; damon_sysfs_cmd_request_callback() local
1433 damon_sysfs_turn_damon_on(struct damon_sysfs_kdamond *kdamond) damon_sysfs_turn_damon_on() argument
1462 damon_sysfs_turn_damon_off(struct damon_sysfs_kdamond *kdamond) damon_sysfs_turn_damon_off() argument
1487 damon_sysfs_handle_cmd(enum damon_sysfs_cmd cmd, struct damon_sysfs_kdamond *kdamond) damon_sysfs_handle_cmd() argument
1536 struct damon_sysfs_kdamond *kdamond = container_of(kobj, state_store() local
1558 struct damon_sysfs_kdamond *kdamond = container_of(kobj, pid_show() local
1580 struct damon_sysfs_kdamond *kdamond = container_of(kobj, damon_sysfs_kdamond_release() local
1653 struct damon_sysfs_kdamond **kdamonds_arr, *kdamond; damon_sysfs_kdamonds_add_dirs() local
[all...]
H A Ddbgfs.c96 if (ctx->kdamond) { in dbgfs_attrs_write()
313 if (ctx->kdamond) { in dbgfs_schemes_write()
452 * This function should not be called while the kdamond is running. @pids is
515 if (ctx->kdamond) { in dbgfs_target_ids_write()
583 if (ctx->kdamond) { in dbgfs_init_regions_read()
679 if (ctx->kdamond) { in dbgfs_init_regions_write()
706 if (ctx->kdamond) in dbgfs_kdamond_pid_read()
707 len = scnprintf(kbuf, count, "%d\n", ctx->kdamond->pid); in dbgfs_kdamond_pid_read()
H A Dcore.c542 * This function should not be called while the kdamond is running.
575 * This function should not be called while the kdamond of the context is
639 if (!ctx->kdamond) { in __damon_start()
642 ctx->kdamond = kthread_run(kdamond_fn, ctx, "kdamond.%d", in __damon_start()
644 if (IS_ERR(ctx->kdamond)) { in __damon_start()
645 err = PTR_ERR(ctx->kdamond); in __damon_start()
646 ctx->kdamond = NULL; in __damon_start()
707 tsk = ctx->kdamond; in __damon_stop()
1353 pr_debug("kdamond ( in kdamond_fn()
[all...]
H A Dreclaim.c215 kdamond_pid = ctx->kdamond->pid; in damon_reclaim_turn()
H A Dlru_sort.c261 kdamond_pid = ctx->kdamond->pid; in damon_lru_sort_turn()
/kernel/linux/linux-6.6/include/linux/
H A Ddamon.h372 * (&damon_ctx.kdamond) calls @init and @prepare_access_checks before starting
395 * @apply_scheme is called from @kdamond when a region for user provided
401 * @cleanup is called from @kdamond just before its termination.
431 * The monitoring thread (&damon_ctx.kdamond) calls @before_start and
497 * @kdamond: Kernel thread who does the monitoring.
498 * @kdamond_lock: Mutex for the synchronizations with @kdamond.
501 * created. The pointer to the thread is stored in @kdamond.
507 * The thread sets @kdamond to NULL when it terminates. Therefore, users can
508 * know whether the monitoring is ongoing or terminated by reading @kdamond.
509 * Reads and writes to @kdamond fro
541 struct task_struct *kdamond; global() member
[all...]

Completed in 8 milliseconds