[dm-devel] [PATCH] dm log: fix create_log_context() to use proper logical_block_size
Mike Snitzer
snitzer at redhat.com
Wed Jun 17 16:21:52 UTC 2009
create_log_context() must use the logical_block_size from the log disk
rather than the target's logical_block_size.
Signed-off-by: Mike Snitzer <snitzer at redhat.com>
---
drivers/md/dm-log.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
Index: linux-2.6/drivers/md/dm-log.c
===================================================================
--- linux-2.6.orig/drivers/md/dm-log.c
+++ linux-2.6/drivers/md/dm-log.c
@@ -404,17 +404,19 @@ static int create_log_context(struct dm_
}
lc->disk_header = NULL;
} else {
+ struct request_queue *q;
lc->log_dev = dev;
lc->log_dev_failed = 0;
lc->header_location.bdev = lc->log_dev->bdev;
lc->header_location.sector = 0;
+ q = bdev_get_queue(lc->header_location.bdev);
/*
* Buffer holds both header and bitset.
*/
buf_size = dm_round_up((LOG_OFFSET << SECTOR_SHIFT) +
bitset_size,
- ti->limits.logical_block_size);
+ q->limits.logical_block_size);
if (buf_size > i_size_read(dev->bdev->bd_inode)) {
DMWARN("log device %s too small: need %llu bytes",
More information about the dm-devel
mailing list