[dm-devel] [PATCH 1/2] dm-bufio: introduce block_to_sector
Mikulas Patocka
mpatocka at redhat.com
Fri Feb 7 20:59:25 UTC 2020
Introduce a function block_to_sector to avoid repetitive code in
the next patch.
Signed-off-by: Mikulas Patocka <mpatocka at redhat.com>
---
drivers/md/dm-bufio.c | 23 ++++++++++++++++-------
1 file changed, 16 insertions(+), 7 deletions(-)
Index: linux-2.6/drivers/md/dm-bufio.c
===================================================================
--- linux-2.6.orig/drivers/md/dm-bufio.c 2020-02-07 17:09:44.000000000 +0100
+++ linux-2.6/drivers/md/dm-bufio.c 2020-02-07 17:13:09.000000000 +0100
@@ -632,6 +632,21 @@ dmio:
submit_bio(bio);
}
+static inline sector_t block_to_sector(struct dm_bufio_client *c, sector_t block)
+{
+ sector_t sector;
+
+ if (unlikely(c->raw_sectors))
+ sector = block;
+ else if (likely(c->sectors_per_block_bits >= 0))
+ sector = block << c->sectors_per_block_bits;
+ else
+ sector = block * (c->block_size >> SECTOR_SHIFT);
+ sector += c->start;
+
+ return sector;
+}
+
static void submit_io(struct dm_buffer *b, int rw, void (*end_io)(struct dm_buffer *, blk_status_t))
{
unsigned n_sectors;
@@ -640,13 +655,7 @@ static void submit_io(struct dm_buffer *
b->end_io = end_io;
- if (unlikely(b->c->raw_sectors))
- sector = b->block;
- else if (likely(b->c->sectors_per_block_bits >= 0))
- sector = b->block << b->c->sectors_per_block_bits;
- else
- sector = b->block * (b->c->block_size >> SECTOR_SHIFT);
- sector += b->c->start;
+ sector = block_to_sector(b->c, b->block);
if (rw != REQ_OP_WRITE) {
n_sectors = b->c->block_size >> SECTOR_SHIFT;
More information about the dm-devel
mailing list