Lines Matching refs:dc
172 struct cached_dev *dc = container_of(kobj, struct cached_dev, in SHOW() local
175 int wb = dc->writeback_running; in SHOW()
177 #define var(stat) (dc->stat) in SHOW()
182 BDEV_CACHE_MODE(&dc->sb)); in SHOW()
187 dc->cache_readahead_policy); in SHOW()
192 dc->stop_when_cache_set_failed); in SHOW()
195 sysfs_printf(data_csum, "%i", dc->disk.data_csum); in SHOW()
204 wb ? atomic_long_read(&dc->writeback_rate.rate) << 9 : 0); in SHOW()
205 sysfs_printf(io_errors, "%i", atomic_read(&dc->io_errors)); in SHOW()
206 sysfs_printf(io_error_limit, "%i", dc->error_limit); in SHOW()
207 sysfs_printf(io_disable, "%i", dc->io_disable); in SHOW()
230 wb ? atomic_long_read(&dc->writeback_rate.rate) << 9 in SHOW()
232 bch_hprint(dirty, bcache_dev_sectors_dirty(&dc->disk) << 9); in SHOW()
233 bch_hprint(target, dc->writeback_rate_target << 9); in SHOW()
235 wb ? dc->writeback_rate_proportional << 9 : 0); in SHOW()
237 wb ? dc->writeback_rate_integral_scaled << 9 : 0); in SHOW()
238 bch_hprint(change, wb ? dc->writeback_rate_change << 9 : 0); in SHOW()
239 next_io = wb ? div64_s64(dc->writeback_rate.next-local_clock(), in SHOW()
255 bcache_dev_sectors_dirty(&dc->disk) << 9); in SHOW()
257 sysfs_hprint(stripe_size, ((uint64_t)dc->disk.stripe_size) << 9); in SHOW()
262 sysfs_print(running, atomic_read(&dc->running)); in SHOW()
263 sysfs_print(state, states[BDEV_STATE(&dc->sb)]); in SHOW()
266 memcpy(buf, dc->sb.label, SB_LABEL_SIZE); in SHOW()
273 snprintf(buf, BDEVNAME_SIZE + 1, "%pg", dc->bdev); in SHOW()
280 snprintf(buf, 36+1, "%pU", dc->sb.uuid); in SHOW()
292 struct cached_dev *dc = container_of(kobj, struct cached_dev, in STORE() local
302 #define d_strtoul(var) sysfs_strtoul(var, dc->var) in STORE()
303 #define d_strtoul_nonzero(var) sysfs_strtoul_clamp(var, dc->var, 1, INT_MAX) in STORE()
304 #define d_strtoi_h(var) sysfs_hatoi(var, dc->var) in STORE()
306 sysfs_strtoul(data_csum, dc->disk.data_csum); in STORE()
308 sysfs_strtoul_bool(bypass_torture_test, dc->bypass_torture_test); in STORE()
309 sysfs_strtoul_bool(writeback_metadata, dc->writeback_metadata); in STORE()
310 sysfs_strtoul_bool(writeback_running, dc->writeback_running); in STORE()
311 sysfs_strtoul_bool(writeback_consider_fragment, dc->writeback_consider_fragment); in STORE()
312 sysfs_strtoul_clamp(writeback_delay, dc->writeback_delay, 0, UINT_MAX); in STORE()
314 sysfs_strtoul_clamp(writeback_percent, dc->writeback_percent, in STORE()
319 long int v = atomic_long_read(&dc->writeback_rate.rate); in STORE()
324 atomic_long_set(&dc->writeback_rate.rate, v); in STORE()
332 dc->writeback_rate_update_seconds, in STORE()
335 dc->writeback_rate_i_term_inverse, in STORE()
338 dc->writeback_rate_p_term_inverse, in STORE()
341 dc->writeback_rate_fp_term_low, in STORE()
342 1, dc->writeback_rate_fp_term_mid - 1); in STORE()
344 dc->writeback_rate_fp_term_mid, in STORE()
345 dc->writeback_rate_fp_term_low + 1, in STORE()
346 dc->writeback_rate_fp_term_high - 1); in STORE()
348 dc->writeback_rate_fp_term_high, in STORE()
349 dc->writeback_rate_fp_term_mid + 1, UINT_MAX); in STORE()
351 dc->writeback_rate_minimum, in STORE()
354 sysfs_strtoul_clamp(io_error_limit, dc->error_limit, 0, INT_MAX); in STORE()
359 dc->io_disable = v ? 1 : 0; in STORE()
363 dc->sequential_cutoff, in STORE()
367 bch_cache_accounting_clear(&dc->accounting); in STORE()
371 v = bch_cached_dev_run(dc); in STORE()
381 if ((unsigned int) v != BDEV_CACHE_MODE(&dc->sb)) { in STORE()
382 SET_BDEV_CACHE_MODE(&dc->sb, v); in STORE()
383 bch_write_bdev_super(dc, NULL); in STORE()
392 if ((unsigned int) v != dc->cache_readahead_policy) in STORE()
393 dc->cache_readahead_policy = v; in STORE()
401 dc->stop_when_cache_set_failed = v; in STORE()
407 memcpy(dc->sb.label, buf, size); in STORE()
409 dc->sb.label[size] = '\0'; in STORE()
410 if (size && dc->sb.label[size - 1] == '\n') in STORE()
411 dc->sb.label[size - 1] = '\0'; in STORE()
412 bch_write_bdev_super(dc, NULL); in STORE()
413 if (dc->disk.c) { in STORE()
414 memcpy(dc->disk.c->uuids[dc->disk.id].label, in STORE()
416 bch_uuid_write(dc->disk.c); in STORE()
422 add_uevent_var(env, "CACHED_UUID=%pU", dc->sb.uuid); in STORE()
424 kobject_uevent_env(&disk_to_dev(dc->disk.disk)->kobj, in STORE()
438 v = bch_cached_dev_attach(dc, c, set_uuid); in STORE()
447 if (attr == &sysfs_detach && dc->disk.c) in STORE()
448 bch_cached_dev_detach(dc); in STORE()
451 bcache_device_stop(&dc->disk); in STORE()
458 struct cached_dev *dc = container_of(kobj, struct cached_dev, in STORE() local
470 if (IS_ERR_OR_NULL(dc->writeback_thread)) { in STORE()
475 if (dc->writeback_running) { in STORE()
476 dc->writeback_running = false; in STORE()
478 dc->disk.disk->disk_name); in STORE()
485 bch_writeback_queue(dc); in STORE()
493 if ((dc->disk.c != NULL) && in STORE()
494 (!test_and_set_bit(BCACHE_DEV_WB_RUNNING, &dc->disk.flags))) in STORE()
495 schedule_delayed_work(&dc->writeback_rate_update, in STORE()
496 dc->writeback_rate_update_seconds * HZ); in STORE()