Lines Matching refs:dc
111 struct cached_dev *dc = container_of(kobj, struct cached_dev, in SHOW() local
115 #define var(stat) (dc->stat) in SHOW()
120 BDEV_CACHE_MODE(&dc->sb)); in SHOW()
122 sysfs_printf(data_csum, "%i", dc->disk.data_csum); in SHOW()
129 sysfs_hprint(writeback_rate, dc->writeback_rate.rate << 9); in SHOW()
144 bch_hprint(rate, dc->writeback_rate.rate << 9); in SHOW()
145 bch_hprint(dirty, bcache_dev_sectors_dirty(&dc->disk) << 9); in SHOW()
146 bch_hprint(target, dc->writeback_rate_target << 9); in SHOW()
147 bch_hprint(proportional,dc->writeback_rate_proportional << 9); in SHOW()
148 bch_hprint(derivative, dc->writeback_rate_derivative << 9); in SHOW()
149 bch_hprint(change, dc->writeback_rate_change << 9); in SHOW()
151 next_io = div64_s64(dc->writeback_rate.next - local_clock(), in SHOW()
167 bcache_dev_sectors_dirty(&dc->disk) << 9); in SHOW()
169 sysfs_hprint(stripe_size, dc->disk.stripe_size << 9); in SHOW()
175 sysfs_print(running, atomic_read(&dc->running)); in SHOW()
176 sysfs_print(state, states[BDEV_STATE(&dc->sb)]); in SHOW()
179 memcpy(buf, dc->sb.label, SB_LABEL_SIZE); in SHOW()
192 struct cached_dev *dc = container_of(kobj, struct cached_dev, in STORE() local
198 #define d_strtoul(var) sysfs_strtoul(var, dc->var) in STORE()
199 #define d_strtoul_nonzero(var) sysfs_strtoul_clamp(var, dc->var, 1, INT_MAX) in STORE()
200 #define d_strtoi_h(var) sysfs_hatoi(var, dc->var) in STORE()
202 sysfs_strtoul(data_csum, dc->disk.data_csum); in STORE()
209 sysfs_strtoul_clamp(writeback_percent, dc->writeback_percent, 0, 40); in STORE()
212 dc->writeback_rate.rate, 1, INT_MAX); in STORE()
222 bch_cache_accounting_clear(&dc->accounting); in STORE()
226 bch_cached_dev_run(dc); in STORE()
234 if ((unsigned) v != BDEV_CACHE_MODE(&dc->sb)) { in STORE()
235 SET_BDEV_CACHE_MODE(&dc->sb, v); in STORE()
236 bch_write_bdev_super(dc, NULL); in STORE()
243 memcpy(dc->sb.label, buf, size); in STORE()
245 dc->sb.label[size] = '\0'; in STORE()
246 if (size && dc->sb.label[size - 1] == '\n') in STORE()
247 dc->sb.label[size - 1] = '\0'; in STORE()
248 bch_write_bdev_super(dc, NULL); in STORE()
249 if (dc->disk.c) { in STORE()
250 memcpy(dc->disk.c->uuids[dc->disk.id].label, in STORE()
252 bch_uuid_write(dc->disk.c); in STORE()
258 add_uevent_var(env, "CACHED_UUID=%pU", dc->sb.uuid), in STORE()
261 &disk_to_dev(dc->disk.disk)->kobj, KOBJ_CHANGE, env->envp); in STORE()
266 if (bch_parse_uuid(buf, dc->sb.set_uuid) < 16) in STORE()
270 v = bch_cached_dev_attach(dc, c); in STORE()
279 if (attr == &sysfs_detach && dc->disk.c) in STORE()
280 bch_cached_dev_detach(dc); in STORE()
283 bcache_device_stop(&dc->disk); in STORE()
290 struct cached_dev *dc = container_of(kobj, struct cached_dev, in STORE() local
297 bch_writeback_queue(dc); in STORE()
300 schedule_delayed_work(&dc->writeback_rate_update, in STORE()
301 dc->writeback_rate_update_seconds * HZ); in STORE()