From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mike Snitzer Subject: [PATCH] dm log: fix create_log_context() to use proper logical_block_size Date: Wed, 17 Jun 2009 12:21:52 -0400 Message-ID: <1245255712-5320-1-git-send-email-snitzer@redhat.com> Reply-To: device-mapper development Return-path: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: dm-devel-bounces@redhat.com Errors-To: dm-devel-bounces@redhat.com To: dm-devel@redhat.com List-Id: dm-devel.ids 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 --- 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",