Lines Matching refs:attr_set
35 struct gov_attr_set *attr_set = to_gov_attr_set(kobj); in governor_store() local
39 mutex_lock(&attr_set->update_lock); in governor_store()
40 ret = attr_set->usage_count ? gattr->store(attr_set, buf, count) : -EBUSY; in governor_store()
41 mutex_unlock(&attr_set->update_lock); in governor_store()
51 void gov_attr_set_init(struct gov_attr_set *attr_set, struct list_head *list_node) in gov_attr_set_init() argument
53 INIT_LIST_HEAD(&attr_set->policy_list); in gov_attr_set_init()
54 mutex_init(&attr_set->update_lock); in gov_attr_set_init()
55 attr_set->usage_count = 1; in gov_attr_set_init()
56 list_add(list_node, &attr_set->policy_list); in gov_attr_set_init()
60 void gov_attr_set_get(struct gov_attr_set *attr_set, struct list_head *list_node) in gov_attr_set_get() argument
62 mutex_lock(&attr_set->update_lock); in gov_attr_set_get()
63 attr_set->usage_count++; in gov_attr_set_get()
64 list_add(list_node, &attr_set->policy_list); in gov_attr_set_get()
65 mutex_unlock(&attr_set->update_lock); in gov_attr_set_get()
69 unsigned int gov_attr_set_put(struct gov_attr_set *attr_set, struct list_head *list_node) in gov_attr_set_put() argument
73 mutex_lock(&attr_set->update_lock); in gov_attr_set_put()
75 count = --attr_set->usage_count; in gov_attr_set_put()
76 mutex_unlock(&attr_set->update_lock); in gov_attr_set_put()
80 kobject_put(&attr_set->kobj); in gov_attr_set_put()
81 mutex_destroy(&attr_set->update_lock); in gov_attr_set_put()