Lines Matching defs:block

78 static int dust_remove_block(struct dust_device *dd, unsigned long long block)
84 bblock = dust_rb_search(&dd->badblocklist, block);
88 DMERR("%s: block %llu not found in badblocklist",
89 __func__, block);
98 DMINFO("%s: badblock removed at block %llu", __func__, block);
105 static int dust_add_block(struct dust_device *dd, unsigned long long block,
119 bblock->bb = block;
123 DMERR("%s: block %llu already in badblocklist",
124 __func__, block);
133 DMINFO("%s: badblock added at block %llu with write fail count %hhu",
134 __func__, block, wr_fail_cnt);
141 static int dust_query_block(struct dust_device *dd, unsigned long long block, char *result,
149 bblock = dust_rb_search(&dd->badblocklist, block);
151 DMEMIT("%s: block %llu found in badblocklist", __func__, block);
153 DMEMIT("%s: block %llu not found in badblocklist", __func__, block);
200 DMINFO("block %llu removed from badblocklist by write",
317 * device_path: path to the block device
319 * blksz: block size (minimum 512, maximum 1073741824, must be a power of 2)
337 ti->error = "Invalid block size parameter";
382 * Whether to fail a read on a "bad" block.
388 * Initialize bad block list rbtree.
421 unsigned long long tmp, block;
464 block = tmp;
466 if (block > size) {
467 DMERR("selected block value out of range");
472 r = dust_add_block(dd, block, 0);
474 r = dust_remove_block(dd, block);
476 r = dust_query_block(dd, block, result, maxlen, &sz);
487 block = tmp;
494 if (block > size) {
495 DMERR("selected block value out of range");
500 r = dust_add_block(dd, block, wr_fail_cnt);