Lines Matching refs:block

7  * Device-mapper target to emulate smaller logical block
22 /* Emulated block size context. */
24 struct dm_dev *dev; /* Underlying device to emulate block size on. */
31 unsigned int e_bs; /* Emulated block size in sectors exposed to upper layer. */
32 unsigned int u_bs; /* Underlying block size in sectors retrieved from/set on lower layer device. */
34 bool u_bs_set:1; /* Flag to indicate underlying block size is set on table line. */
73 sector_t block = __sector_to_block(ec, iter->bi_sector);
85 /* Avoid reading for writes in case bio vector's page overwrites block completely. */
87 ba = dm_bufio_read(ec->bufio, block, &b);
89 ba = dm_bufio_new(ec->bufio, block, &b);
115 block++;
145 sector_t block, blocks, sector = bio->bi_iter.bi_sector;
147 block = __sector_to_block(ec, sector);
151 * Partial first underlying block (__nr_blocks() may have
152 * resulted in one block).
155 block++;
159 /* Partial last underlying block if any. */
163 return blocks ? dm_bufio_issue_discard(ec->bufio, block, blocks) : 0;
239 * Construct an emulated block size mapping: <dev_path> <offset> <ebs> [<ubs>]
243 * <ebs>: emulated block size in units of 512 bytes exposed to the upper layer
244 * [<ubs>]: underlying block size in units of 512 bytes imposed on the lower layer;
245 * optional, if not supplied, retrieve logical block size from underlying device
278 ti->error = "Invalid emulated block size";
285 ti->error = "Invalid underlying block size";
304 ti->error = "Invalid retrieved underlying block size";
310 DMINFO("Emulation superfluous: emulated equal to underlying block size");
313 ti->error = "Device offset must be multiple of underlying block size";
458 MODULE_DESCRIPTION(DM_NAME " emulated block size target");