Lines Matching refs:kobj
21 struct kobject kobj; member
35 range->kobj = (struct kobject){}; in damon_sysfs_ul_range_alloc()
42 static ssize_t min_show(struct kobject *kobj, struct kobj_attribute *attr, in min_show() argument
45 struct damon_sysfs_ul_range *range = container_of(kobj, in min_show()
46 struct damon_sysfs_ul_range, kobj); in min_show()
51 static ssize_t min_store(struct kobject *kobj, struct kobj_attribute *attr, in min_store() argument
54 struct damon_sysfs_ul_range *range = container_of(kobj, in min_store()
55 struct damon_sysfs_ul_range, kobj); in min_store()
67 static ssize_t max_show(struct kobject *kobj, struct kobj_attribute *attr, in max_show() argument
70 struct damon_sysfs_ul_range *range = container_of(kobj, in max_show()
71 struct damon_sysfs_ul_range, kobj); in max_show()
76 static ssize_t max_store(struct kobject *kobj, struct kobj_attribute *attr, in max_store() argument
79 struct damon_sysfs_ul_range *range = container_of(kobj, in max_store()
80 struct damon_sysfs_ul_range, kobj); in max_store()
92 static void damon_sysfs_ul_range_release(struct kobject *kobj) in damon_sysfs_ul_range_release() argument
94 kfree(container_of(kobj, struct damon_sysfs_ul_range, kobj)); in damon_sysfs_ul_range_release()
121 struct kobject kobj; member
134 static ssize_t nr_tried_show(struct kobject *kobj, struct kobj_attribute *attr, in nr_tried_show() argument
137 struct damon_sysfs_stats *stats = container_of(kobj, in nr_tried_show()
138 struct damon_sysfs_stats, kobj); in nr_tried_show()
143 static ssize_t sz_tried_show(struct kobject *kobj, struct kobj_attribute *attr, in sz_tried_show() argument
146 struct damon_sysfs_stats *stats = container_of(kobj, in sz_tried_show()
147 struct damon_sysfs_stats, kobj); in sz_tried_show()
152 static ssize_t nr_applied_show(struct kobject *kobj, in nr_applied_show() argument
155 struct damon_sysfs_stats *stats = container_of(kobj, in nr_applied_show()
156 struct damon_sysfs_stats, kobj); in nr_applied_show()
161 static ssize_t sz_applied_show(struct kobject *kobj, in sz_applied_show() argument
164 struct damon_sysfs_stats *stats = container_of(kobj, in sz_applied_show()
165 struct damon_sysfs_stats, kobj); in sz_applied_show()
170 static ssize_t qt_exceeds_show(struct kobject *kobj, in qt_exceeds_show() argument
173 struct damon_sysfs_stats *stats = container_of(kobj, in qt_exceeds_show()
174 struct damon_sysfs_stats, kobj); in qt_exceeds_show()
179 static void damon_sysfs_stats_release(struct kobject *kobj) in damon_sysfs_stats_release() argument
181 kfree(container_of(kobj, struct damon_sysfs_stats, kobj)); in damon_sysfs_stats_release()
220 struct kobject kobj; member
237 watermarks->kobj = (struct kobject){}; in damon_sysfs_watermarks_alloc()
252 static ssize_t metric_show(struct kobject *kobj, struct kobj_attribute *attr, in metric_show() argument
255 struct damon_sysfs_watermarks *watermarks = container_of(kobj, in metric_show()
256 struct damon_sysfs_watermarks, kobj); in metric_show()
262 static ssize_t metric_store(struct kobject *kobj, struct kobj_attribute *attr, in metric_store() argument
265 struct damon_sysfs_watermarks *watermarks = container_of(kobj, in metric_store()
266 struct damon_sysfs_watermarks, kobj); in metric_store()
278 static ssize_t interval_us_show(struct kobject *kobj, in interval_us_show() argument
281 struct damon_sysfs_watermarks *watermarks = container_of(kobj, in interval_us_show()
282 struct damon_sysfs_watermarks, kobj); in interval_us_show()
287 static ssize_t interval_us_store(struct kobject *kobj, in interval_us_store() argument
290 struct damon_sysfs_watermarks *watermarks = container_of(kobj, in interval_us_store()
291 struct damon_sysfs_watermarks, kobj); in interval_us_store()
297 static ssize_t high_show(struct kobject *kobj, in high_show() argument
300 struct damon_sysfs_watermarks *watermarks = container_of(kobj, in high_show()
301 struct damon_sysfs_watermarks, kobj); in high_show()
306 static ssize_t high_store(struct kobject *kobj, in high_store() argument
309 struct damon_sysfs_watermarks *watermarks = container_of(kobj, in high_store()
310 struct damon_sysfs_watermarks, kobj); in high_store()
316 static ssize_t mid_show(struct kobject *kobj, in mid_show() argument
319 struct damon_sysfs_watermarks *watermarks = container_of(kobj, in mid_show()
320 struct damon_sysfs_watermarks, kobj); in mid_show()
325 static ssize_t mid_store(struct kobject *kobj, in mid_store() argument
328 struct damon_sysfs_watermarks *watermarks = container_of(kobj, in mid_store()
329 struct damon_sysfs_watermarks, kobj); in mid_store()
335 static ssize_t low_show(struct kobject *kobj, in low_show() argument
338 struct damon_sysfs_watermarks *watermarks = container_of(kobj, in low_show()
339 struct damon_sysfs_watermarks, kobj); in low_show()
344 static ssize_t low_store(struct kobject *kobj, in low_store() argument
347 struct damon_sysfs_watermarks *watermarks = container_of(kobj, in low_store()
348 struct damon_sysfs_watermarks, kobj); in low_store()
354 static void damon_sysfs_watermarks_release(struct kobject *kobj) in damon_sysfs_watermarks_release() argument
356 kfree(container_of(kobj, struct damon_sysfs_watermarks, kobj)); in damon_sysfs_watermarks_release()
395 struct kobject kobj; member
409 weights->kobj = (struct kobject){}; in damon_sysfs_weights_alloc()
416 static ssize_t sz_permil_show(struct kobject *kobj, in sz_permil_show() argument
419 struct damon_sysfs_weights *weights = container_of(kobj, in sz_permil_show()
420 struct damon_sysfs_weights, kobj); in sz_permil_show()
425 static ssize_t sz_permil_store(struct kobject *kobj, in sz_permil_store() argument
428 struct damon_sysfs_weights *weights = container_of(kobj, in sz_permil_store()
429 struct damon_sysfs_weights, kobj); in sz_permil_store()
435 static ssize_t nr_accesses_permil_show(struct kobject *kobj, in nr_accesses_permil_show() argument
438 struct damon_sysfs_weights *weights = container_of(kobj, in nr_accesses_permil_show()
439 struct damon_sysfs_weights, kobj); in nr_accesses_permil_show()
444 static ssize_t nr_accesses_permil_store(struct kobject *kobj, in nr_accesses_permil_store() argument
447 struct damon_sysfs_weights *weights = container_of(kobj, in nr_accesses_permil_store()
448 struct damon_sysfs_weights, kobj); in nr_accesses_permil_store()
454 static ssize_t age_permil_show(struct kobject *kobj, in age_permil_show() argument
457 struct damon_sysfs_weights *weights = container_of(kobj, in age_permil_show()
458 struct damon_sysfs_weights, kobj); in age_permil_show()
463 static ssize_t age_permil_store(struct kobject *kobj, in age_permil_store() argument
466 struct damon_sysfs_weights *weights = container_of(kobj, in age_permil_store()
467 struct damon_sysfs_weights, kobj); in age_permil_store()
473 static void damon_sysfs_weights_release(struct kobject *kobj) in damon_sysfs_weights_release() argument
475 kfree(container_of(kobj, struct damon_sysfs_weights, kobj)); in damon_sysfs_weights_release()
506 struct kobject kobj; member
527 err = kobject_init_and_add(&weights->kobj, &damon_sysfs_weights_ktype, in damon_sysfs_quotas_add_dirs()
528 "as->kobj, "weights"); in damon_sysfs_quotas_add_dirs()
530 kobject_put(&weights->kobj); in damon_sysfs_quotas_add_dirs()
538 kobject_put("as->weights->kobj); in damon_sysfs_quotas_rm_dirs()
541 static ssize_t ms_show(struct kobject *kobj, struct kobj_attribute *attr, in ms_show() argument
544 struct damon_sysfs_quotas *quotas = container_of(kobj, in ms_show()
545 struct damon_sysfs_quotas, kobj); in ms_show()
550 static ssize_t ms_store(struct kobject *kobj, struct kobj_attribute *attr, in ms_store() argument
553 struct damon_sysfs_quotas *quotas = container_of(kobj, in ms_store()
554 struct damon_sysfs_quotas, kobj); in ms_store()
562 static ssize_t bytes_show(struct kobject *kobj, struct kobj_attribute *attr, in bytes_show() argument
565 struct damon_sysfs_quotas *quotas = container_of(kobj, in bytes_show()
566 struct damon_sysfs_quotas, kobj); in bytes_show()
571 static ssize_t bytes_store(struct kobject *kobj, in bytes_store() argument
574 struct damon_sysfs_quotas *quotas = container_of(kobj, in bytes_store()
575 struct damon_sysfs_quotas, kobj); in bytes_store()
583 static ssize_t reset_interval_ms_show(struct kobject *kobj, in reset_interval_ms_show() argument
586 struct damon_sysfs_quotas *quotas = container_of(kobj, in reset_interval_ms_show()
587 struct damon_sysfs_quotas, kobj); in reset_interval_ms_show()
592 static ssize_t reset_interval_ms_store(struct kobject *kobj, in reset_interval_ms_store() argument
595 struct damon_sysfs_quotas *quotas = container_of(kobj, in reset_interval_ms_store()
596 struct damon_sysfs_quotas, kobj); in reset_interval_ms_store()
604 static void damon_sysfs_quotas_release(struct kobject *kobj) in damon_sysfs_quotas_release() argument
606 kfree(container_of(kobj, struct damon_sysfs_quotas, kobj)); in damon_sysfs_quotas_release()
637 struct kobject kobj; member
651 access_pattern->kobj = (struct kobject){}; in damon_sysfs_access_pattern_alloc()
665 err = kobject_init_and_add(&range->kobj, &damon_sysfs_ul_range_ktype, in damon_sysfs_access_pattern_add_range_dir()
666 &access_pattern->kobj, name); in damon_sysfs_access_pattern_add_range_dir()
668 kobject_put(&range->kobj); in damon_sysfs_access_pattern_add_range_dir()
696 kobject_put(&access_pattern->age->kobj); in damon_sysfs_access_pattern_add_dirs()
699 kobject_put(&access_pattern->nr_accesses->kobj); in damon_sysfs_access_pattern_add_dirs()
702 kobject_put(&access_pattern->sz->kobj); in damon_sysfs_access_pattern_add_dirs()
710 kobject_put(&access_pattern->sz->kobj); in damon_sysfs_access_pattern_rm_dirs()
711 kobject_put(&access_pattern->nr_accesses->kobj); in damon_sysfs_access_pattern_rm_dirs()
712 kobject_put(&access_pattern->age->kobj); in damon_sysfs_access_pattern_rm_dirs()
715 static void damon_sysfs_access_pattern_release(struct kobject *kobj) in damon_sysfs_access_pattern_release() argument
717 kfree(container_of(kobj, struct damon_sysfs_access_pattern, kobj)); in damon_sysfs_access_pattern_release()
736 struct kobject kobj; member
764 scheme->kobj = (struct kobject){}; in damon_sysfs_scheme_alloc()
778 err = kobject_init_and_add(&access_pattern->kobj, in damon_sysfs_scheme_set_access_pattern()
779 &damon_sysfs_access_pattern_ktype, &scheme->kobj, in damon_sysfs_scheme_set_access_pattern()
790 kobject_put(&access_pattern->kobj); in damon_sysfs_scheme_set_access_pattern()
801 err = kobject_init_and_add("as->kobj, &damon_sysfs_quotas_ktype, in damon_sysfs_scheme_set_quotas()
802 &scheme->kobj, "quotas"); in damon_sysfs_scheme_set_quotas()
812 kobject_put("as->kobj); in damon_sysfs_scheme_set_quotas()
824 err = kobject_init_and_add(&watermarks->kobj, in damon_sysfs_scheme_set_watermarks()
825 &damon_sysfs_watermarks_ktype, &scheme->kobj, in damon_sysfs_scheme_set_watermarks()
828 kobject_put(&watermarks->kobj); in damon_sysfs_scheme_set_watermarks()
841 err = kobject_init_and_add(&stats->kobj, &damon_sysfs_stats_ktype, in damon_sysfs_scheme_set_stats()
842 &scheme->kobj, "stats"); in damon_sysfs_scheme_set_stats()
844 kobject_put(&stats->kobj); in damon_sysfs_scheme_set_stats()
869 kobject_put(&scheme->watermarks->kobj); in damon_sysfs_scheme_add_dirs()
872 kobject_put(&scheme->quotas->kobj); in damon_sysfs_scheme_add_dirs()
875 kobject_put(&scheme->access_pattern->kobj); in damon_sysfs_scheme_add_dirs()
883 kobject_put(&scheme->access_pattern->kobj); in damon_sysfs_scheme_rm_dirs()
885 kobject_put(&scheme->quotas->kobj); in damon_sysfs_scheme_rm_dirs()
886 kobject_put(&scheme->watermarks->kobj); in damon_sysfs_scheme_rm_dirs()
887 kobject_put(&scheme->stats->kobj); in damon_sysfs_scheme_rm_dirs()
890 static ssize_t action_show(struct kobject *kobj, struct kobj_attribute *attr, in action_show() argument
893 struct damon_sysfs_scheme *scheme = container_of(kobj, in action_show()
894 struct damon_sysfs_scheme, kobj); in action_show()
900 static ssize_t action_store(struct kobject *kobj, struct kobj_attribute *attr, in action_store() argument
903 struct damon_sysfs_scheme *scheme = container_of(kobj, in action_store()
904 struct damon_sysfs_scheme, kobj); in action_store()
916 static void damon_sysfs_scheme_release(struct kobject *kobj) in damon_sysfs_scheme_release() argument
918 kfree(container_of(kobj, struct damon_sysfs_scheme, kobj)); in damon_sysfs_scheme_release()
941 struct kobject kobj; member
958 kobject_put(&schemes_arr[i]->kobj); in damon_sysfs_schemes_rm_dirs()
988 err = kobject_init_and_add(&scheme->kobj, in damon_sysfs_schemes_add_dirs()
989 &damon_sysfs_scheme_ktype, &schemes->kobj, in damon_sysfs_schemes_add_dirs()
1004 kobject_put(&scheme->kobj); in damon_sysfs_schemes_add_dirs()
1008 static ssize_t nr_schemes_show(struct kobject *kobj, in nr_schemes_show() argument
1011 struct damon_sysfs_schemes *schemes = container_of(kobj, in nr_schemes_show()
1012 struct damon_sysfs_schemes, kobj); in nr_schemes_show()
1017 static ssize_t nr_schemes_store(struct kobject *kobj, in nr_schemes_store() argument
1028 schemes = container_of(kobj, struct damon_sysfs_schemes, kobj); in nr_schemes_store()
1039 static void damon_sysfs_schemes_release(struct kobject *kobj) in damon_sysfs_schemes_release() argument
1041 kfree(container_of(kobj, struct damon_sysfs_schemes, kobj)); in damon_sysfs_schemes_release()
1064 struct kobject kobj; member
1078 region->kobj = (struct kobject){}; in damon_sysfs_region_alloc()
1084 static ssize_t start_show(struct kobject *kobj, struct kobj_attribute *attr, in start_show() argument
1087 struct damon_sysfs_region *region = container_of(kobj, in start_show()
1088 struct damon_sysfs_region, kobj); in start_show()
1093 static ssize_t start_store(struct kobject *kobj, struct kobj_attribute *attr, in start_store() argument
1096 struct damon_sysfs_region *region = container_of(kobj, in start_store()
1097 struct damon_sysfs_region, kobj); in start_store()
1103 static ssize_t end_show(struct kobject *kobj, struct kobj_attribute *attr, in end_show() argument
1106 struct damon_sysfs_region *region = container_of(kobj, in end_show()
1107 struct damon_sysfs_region, kobj); in end_show()
1112 static ssize_t end_store(struct kobject *kobj, struct kobj_attribute *attr, in end_store() argument
1115 struct damon_sysfs_region *region = container_of(kobj, in end_store()
1116 struct damon_sysfs_region, kobj); in end_store()
1122 static void damon_sysfs_region_release(struct kobject *kobj) in damon_sysfs_region_release() argument
1124 kfree(container_of(kobj, struct damon_sysfs_region, kobj)); in damon_sysfs_region_release()
1151 struct kobject kobj; member
1167 kobject_put(®ions_arr[i]->kobj); in damon_sysfs_regions_rm_dirs()
1196 err = kobject_init_and_add(®ion->kobj, in damon_sysfs_regions_add_dirs()
1197 &damon_sysfs_region_ktype, ®ions->kobj, in damon_sysfs_regions_add_dirs()
1200 kobject_put(®ion->kobj); in damon_sysfs_regions_add_dirs()
1211 static ssize_t nr_regions_show(struct kobject *kobj, in nr_regions_show() argument
1214 struct damon_sysfs_regions *regions = container_of(kobj, in nr_regions_show()
1215 struct damon_sysfs_regions, kobj); in nr_regions_show()
1220 static ssize_t nr_regions_store(struct kobject *kobj, in nr_regions_store() argument
1231 regions = container_of(kobj, struct damon_sysfs_regions, kobj); in nr_regions_store()
1243 static void damon_sysfs_regions_release(struct kobject *kobj) in damon_sysfs_regions_release() argument
1245 kfree(container_of(kobj, struct damon_sysfs_regions, kobj)); in damon_sysfs_regions_release()
1268 struct kobject kobj; member
1286 err = kobject_init_and_add(®ions->kobj, &damon_sysfs_regions_ktype, in damon_sysfs_target_add_dirs()
1287 &target->kobj, "regions"); in damon_sysfs_target_add_dirs()
1289 kobject_put(®ions->kobj); in damon_sysfs_target_add_dirs()
1298 kobject_put(&target->regions->kobj); in damon_sysfs_target_rm_dirs()
1301 static ssize_t pid_target_show(struct kobject *kobj, in pid_target_show() argument
1304 struct damon_sysfs_target *target = container_of(kobj, in pid_target_show()
1305 struct damon_sysfs_target, kobj); in pid_target_show()
1310 static ssize_t pid_target_store(struct kobject *kobj, in pid_target_store() argument
1313 struct damon_sysfs_target *target = container_of(kobj, in pid_target_store()
1314 struct damon_sysfs_target, kobj); in pid_target_store()
1322 static void damon_sysfs_target_release(struct kobject *kobj) in damon_sysfs_target_release() argument
1324 kfree(container_of(kobj, struct damon_sysfs_target, kobj)); in damon_sysfs_target_release()
1347 struct kobject kobj; member
1364 kobject_put(&targets_arr[i]->kobj); in damon_sysfs_targets_rm_dirs()
1394 err = kobject_init_and_add(&target->kobj, in damon_sysfs_targets_add_dirs()
1395 &damon_sysfs_target_ktype, &targets->kobj, in damon_sysfs_targets_add_dirs()
1411 kobject_put(&target->kobj); in damon_sysfs_targets_add_dirs()
1415 static ssize_t nr_targets_show(struct kobject *kobj, in nr_targets_show() argument
1418 struct damon_sysfs_targets *targets = container_of(kobj, in nr_targets_show()
1419 struct damon_sysfs_targets, kobj); in nr_targets_show()
1424 static ssize_t nr_targets_store(struct kobject *kobj, in nr_targets_store() argument
1435 targets = container_of(kobj, struct damon_sysfs_targets, kobj); in nr_targets_store()
1447 static void damon_sysfs_targets_release(struct kobject *kobj) in damon_sysfs_targets_release() argument
1449 kfree(container_of(kobj, struct damon_sysfs_targets, kobj)); in damon_sysfs_targets_release()
1472 struct kobject kobj; member
1488 intervals->kobj = (struct kobject){}; in damon_sysfs_intervals_alloc()
1495 static ssize_t sample_us_show(struct kobject *kobj, in sample_us_show() argument
1498 struct damon_sysfs_intervals *intervals = container_of(kobj, in sample_us_show()
1499 struct damon_sysfs_intervals, kobj); in sample_us_show()
1504 static ssize_t sample_us_store(struct kobject *kobj, in sample_us_store() argument
1507 struct damon_sysfs_intervals *intervals = container_of(kobj, in sample_us_store()
1508 struct damon_sysfs_intervals, kobj); in sample_us_store()
1519 static ssize_t aggr_us_show(struct kobject *kobj, struct kobj_attribute *attr, in aggr_us_show() argument
1522 struct damon_sysfs_intervals *intervals = container_of(kobj, in aggr_us_show()
1523 struct damon_sysfs_intervals, kobj); in aggr_us_show()
1528 static ssize_t aggr_us_store(struct kobject *kobj, struct kobj_attribute *attr, in aggr_us_store() argument
1531 struct damon_sysfs_intervals *intervals = container_of(kobj, in aggr_us_store()
1532 struct damon_sysfs_intervals, kobj); in aggr_us_store()
1543 static ssize_t update_us_show(struct kobject *kobj, in update_us_show() argument
1546 struct damon_sysfs_intervals *intervals = container_of(kobj, in update_us_show()
1547 struct damon_sysfs_intervals, kobj); in update_us_show()
1552 static ssize_t update_us_store(struct kobject *kobj, in update_us_store() argument
1555 struct damon_sysfs_intervals *intervals = container_of(kobj, in update_us_store()
1556 struct damon_sysfs_intervals, kobj); in update_us_store()
1567 static void damon_sysfs_intervals_release(struct kobject *kobj) in damon_sysfs_intervals_release() argument
1569 kfree(container_of(kobj, struct damon_sysfs_intervals, kobj)); in damon_sysfs_intervals_release()
1600 struct kobject kobj; member
1611 attrs->kobj = (struct kobject){}; in damon_sysfs_attrs_alloc()
1625 err = kobject_init_and_add(&intervals->kobj, in damon_sysfs_attrs_add_dirs()
1626 &damon_sysfs_intervals_ktype, &attrs->kobj, in damon_sysfs_attrs_add_dirs()
1638 err = kobject_init_and_add(&nr_regions_range->kobj, in damon_sysfs_attrs_add_dirs()
1639 &damon_sysfs_ul_range_ktype, &attrs->kobj, in damon_sysfs_attrs_add_dirs()
1647 kobject_put(&nr_regions_range->kobj); in damon_sysfs_attrs_add_dirs()
1650 kobject_put(&intervals->kobj); in damon_sysfs_attrs_add_dirs()
1657 kobject_put(&attrs->nr_regions_range->kobj); in damon_sysfs_attrs_rm_dirs()
1658 kobject_put(&attrs->intervals->kobj); in damon_sysfs_attrs_rm_dirs()
1661 static void damon_sysfs_attrs_release(struct kobject *kobj) in damon_sysfs_attrs_release() argument
1663 kfree(container_of(kobj, struct damon_sysfs_attrs, kobj)); in damon_sysfs_attrs_release()
1689 struct kobject kobj; member
1704 context->kobj = (struct kobject){}; in damon_sysfs_context_alloc()
1716 err = kobject_init_and_add(&attrs->kobj, &damon_sysfs_attrs_ktype, in damon_sysfs_context_set_attrs()
1717 &context->kobj, "monitoring_attrs"); in damon_sysfs_context_set_attrs()
1727 kobject_put(&attrs->kobj); in damon_sysfs_context_set_attrs()
1738 err = kobject_init_and_add(&targets->kobj, &damon_sysfs_targets_ktype, in damon_sysfs_context_set_targets()
1739 &context->kobj, "targets"); in damon_sysfs_context_set_targets()
1741 kobject_put(&targets->kobj); in damon_sysfs_context_set_targets()
1755 err = kobject_init_and_add(&schemes->kobj, &damon_sysfs_schemes_ktype, in damon_sysfs_context_set_schemes()
1756 &context->kobj, "schemes"); in damon_sysfs_context_set_schemes()
1758 kobject_put(&schemes->kobj); in damon_sysfs_context_set_schemes()
1783 kobject_put(&context->targets->kobj); in damon_sysfs_context_add_dirs()
1786 kobject_put(&context->attrs->kobj); in damon_sysfs_context_add_dirs()
1794 kobject_put(&context->attrs->kobj); in damon_sysfs_context_rm_dirs()
1796 kobject_put(&context->targets->kobj); in damon_sysfs_context_rm_dirs()
1798 kobject_put(&context->schemes->kobj); in damon_sysfs_context_rm_dirs()
1801 static ssize_t avail_operations_show(struct kobject *kobj, in avail_operations_show() argument
1816 static ssize_t operations_show(struct kobject *kobj, in operations_show() argument
1819 struct damon_sysfs_context *context = container_of(kobj, in operations_show()
1820 struct damon_sysfs_context, kobj); in operations_show()
1825 static ssize_t operations_store(struct kobject *kobj, in operations_store() argument
1828 struct damon_sysfs_context *context = container_of(kobj, in operations_store()
1829 struct damon_sysfs_context, kobj); in operations_store()
1841 static void damon_sysfs_context_release(struct kobject *kobj) in damon_sysfs_context_release() argument
1843 kfree(container_of(kobj, struct damon_sysfs_context, kobj)); in damon_sysfs_context_release()
1870 struct kobject kobj; member
1887 kobject_put(&contexts_arr[i]->kobj); in damon_sysfs_contexts_rm_dirs()
1917 err = kobject_init_and_add(&context->kobj, in damon_sysfs_contexts_add_dirs()
1918 &damon_sysfs_context_ktype, &contexts->kobj, in damon_sysfs_contexts_add_dirs()
1934 kobject_put(&context->kobj); in damon_sysfs_contexts_add_dirs()
1938 static ssize_t nr_contexts_show(struct kobject *kobj, in nr_contexts_show() argument
1941 struct damon_sysfs_contexts *contexts = container_of(kobj, in nr_contexts_show()
1942 struct damon_sysfs_contexts, kobj); in nr_contexts_show()
1947 static ssize_t nr_contexts_store(struct kobject *kobj, in nr_contexts_store() argument
1960 contexts = container_of(kobj, struct damon_sysfs_contexts, kobj); in nr_contexts_store()
1971 static void damon_sysfs_contexts_release(struct kobject *kobj) in damon_sysfs_contexts_release() argument
1973 kfree(container_of(kobj, struct damon_sysfs_contexts, kobj)); in damon_sysfs_contexts_release()
1996 struct kobject kobj; member
2015 err = kobject_init_and_add(&contexts->kobj, in damon_sysfs_kdamond_add_dirs()
2016 &damon_sysfs_contexts_ktype, &kdamond->kobj, in damon_sysfs_kdamond_add_dirs()
2019 kobject_put(&contexts->kobj); in damon_sysfs_kdamond_add_dirs()
2030 kobject_put(&kdamond->contexts->kobj); in damon_sysfs_kdamond_rm_dirs()
2091 static ssize_t state_show(struct kobject *kobj, struct kobj_attribute *attr, in state_show() argument
2094 struct damon_sysfs_kdamond *kdamond = container_of(kobj, in state_show()
2095 struct damon_sysfs_kdamond, kobj); in state_show()
2596 static ssize_t state_store(struct kobject *kobj, struct kobj_attribute *attr, in state_store() argument
2599 struct damon_sysfs_kdamond *kdamond = container_of(kobj, in state_store()
2600 struct damon_sysfs_kdamond, kobj); in state_store()
2618 static ssize_t pid_show(struct kobject *kobj, in pid_show() argument
2621 struct damon_sysfs_kdamond *kdamond = container_of(kobj, in pid_show()
2622 struct damon_sysfs_kdamond, kobj); in pid_show()
2641 static void damon_sysfs_kdamond_release(struct kobject *kobj) in damon_sysfs_kdamond_release() argument
2643 struct damon_sysfs_kdamond *kdamond = container_of(kobj, in damon_sysfs_kdamond_release()
2644 struct damon_sysfs_kdamond, kobj); in damon_sysfs_kdamond_release()
2675 struct kobject kobj; member
2692 kobject_put(&kdamonds_arr[i]->kobj); in damon_sysfs_kdamonds_rm_dirs()
2739 err = kobject_init_and_add(&kdamond->kobj, in damon_sysfs_kdamonds_add_dirs()
2740 &damon_sysfs_kdamond_ktype, &kdamonds->kobj, in damon_sysfs_kdamonds_add_dirs()
2756 kobject_put(&kdamond->kobj); in damon_sysfs_kdamonds_add_dirs()
2760 static ssize_t nr_kdamonds_show(struct kobject *kobj, in nr_kdamonds_show() argument
2763 struct damon_sysfs_kdamonds *kdamonds = container_of(kobj, in nr_kdamonds_show()
2764 struct damon_sysfs_kdamonds, kobj); in nr_kdamonds_show()
2769 static ssize_t nr_kdamonds_store(struct kobject *kobj, in nr_kdamonds_store() argument
2781 kdamonds = container_of(kobj, struct damon_sysfs_kdamonds, kobj); in nr_kdamonds_store()
2793 static void damon_sysfs_kdamonds_release(struct kobject *kobj) in damon_sysfs_kdamonds_release() argument
2795 kfree(container_of(kobj, struct damon_sysfs_kdamonds, kobj)); in damon_sysfs_kdamonds_release()
2818 struct kobject kobj; member
2836 err = kobject_init_and_add(&kdamonds->kobj, in damon_sysfs_ui_dir_add_dirs()
2837 &damon_sysfs_kdamonds_ktype, &ui_dir->kobj, in damon_sysfs_ui_dir_add_dirs()
2840 kobject_put(&kdamonds->kobj); in damon_sysfs_ui_dir_add_dirs()
2847 static void damon_sysfs_ui_dir_release(struct kobject *kobj) in damon_sysfs_ui_dir_release() argument
2849 kfree(container_of(kobj, struct damon_sysfs_ui_dir, kobj)); in damon_sysfs_ui_dir_release()
2878 err = kobject_init_and_add(&admin->kobj, &damon_sysfs_ui_dir_ktype, in damon_sysfs_init()
2888 kobject_put(&admin->kobj); in damon_sysfs_init()