Lines Matching refs:acc

95 int bch_cache_accounting_add_kobjs(struct cache_accounting *acc,  in bch_cache_accounting_add_kobjs()  argument
98 int ret = kobject_add(&acc->total.kobj, parent, in bch_cache_accounting_add_kobjs()
100 ret = ret ?: kobject_add(&acc->five_minute.kobj, parent, in bch_cache_accounting_add_kobjs()
102 ret = ret ?: kobject_add(&acc->hour.kobj, parent, in bch_cache_accounting_add_kobjs()
104 ret = ret ?: kobject_add(&acc->day.kobj, parent, in bch_cache_accounting_add_kobjs()
109 void bch_cache_accounting_clear(struct cache_accounting *acc) in bch_cache_accounting_clear() argument
111 memset(&acc->total.cache_hits, in bch_cache_accounting_clear()
116 void bch_cache_accounting_destroy(struct cache_accounting *acc) in bch_cache_accounting_destroy() argument
118 kobject_put(&acc->total.kobj); in bch_cache_accounting_destroy()
119 kobject_put(&acc->five_minute.kobj); in bch_cache_accounting_destroy()
120 kobject_put(&acc->hour.kobj); in bch_cache_accounting_destroy()
121 kobject_put(&acc->day.kobj); in bch_cache_accounting_destroy()
123 atomic_set(&acc->closing, 1); in bch_cache_accounting_destroy()
124 if (del_timer_sync(&acc->timer)) in bch_cache_accounting_destroy()
125 closure_return(&acc->cl); in bch_cache_accounting_destroy()
151 struct cache_accounting *acc = (struct cache_accounting *) data; in scale_accounting() local
154 unsigned t = atomic_xchg(&acc->collector.name, 0); \ in scale_accounting()
156 acc->five_minute.name += t; \ in scale_accounting()
157 acc->hour.name += t; \ in scale_accounting()
158 acc->day.name += t; \ in scale_accounting()
159 acc->total.name += t; \ in scale_accounting()
170 scale_stats(&acc->total, 0); in scale_accounting()
171 scale_stats(&acc->day, DAY_RESCALE); in scale_accounting()
172 scale_stats(&acc->hour, HOUR_RESCALE); in scale_accounting()
173 scale_stats(&acc->five_minute, FIVE_MINUTE_RESCALE); in scale_accounting()
175 acc->timer.expires += accounting_delay; in scale_accounting()
177 if (!atomic_read(&acc->closing)) in scale_accounting()
178 add_timer(&acc->timer); in scale_accounting()
180 closure_return(&acc->cl); in scale_accounting()
227 void bch_cache_accounting_init(struct cache_accounting *acc, in bch_cache_accounting_init() argument
230 kobject_init(&acc->total.kobj, &bch_stats_ktype); in bch_cache_accounting_init()
231 kobject_init(&acc->five_minute.kobj, &bch_stats_ktype); in bch_cache_accounting_init()
232 kobject_init(&acc->hour.kobj, &bch_stats_ktype); in bch_cache_accounting_init()
233 kobject_init(&acc->day.kobj, &bch_stats_ktype); in bch_cache_accounting_init()
235 closure_init(&acc->cl, parent); in bch_cache_accounting_init()
236 init_timer(&acc->timer); in bch_cache_accounting_init()
237 acc->timer.expires = jiffies + accounting_delay; in bch_cache_accounting_init()
238 acc->timer.data = (unsigned long) acc; in bch_cache_accounting_init()
239 acc->timer.function = scale_accounting; in bch_cache_accounting_init()
240 add_timer(&acc->timer); in bch_cache_accounting_init()