diff options
author | Martin K. Petersen <martin.petersen@oracle.com> | 2009-05-22 17:17:49 -0400 |
---|---|---|
committer | Jens Axboe <jens.axboe@oracle.com> | 2009-05-22 17:22:54 -0400 |
commit | e1defc4ff0cf57aca6c5e3ff99fa503f5943c1f1 (patch) | |
tree | d60d15a082171c58ac811d547d51a9c3119f23e3 /drivers | |
parent | 9bd7de51ee8537094656149eaf45338cadb7d7d4 (diff) |
block: Do away with the notion of hardsect_size
Until now we have had a 1:1 mapping between storage device physical
block size and the logical block sized used when addressing the device.
With SATA 4KB drives coming out that will no longer be the case. The
sector size will be 4KB but the logical block size will remain
512-bytes. Hence we need to distinguish between the physical block size
and the logical ditto.
This patch renames hardsect_size to logical_block_size.
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Diffstat (limited to 'drivers')
30 files changed, 51 insertions, 47 deletions
diff --git a/drivers/block/cciss.c b/drivers/block/cciss.c index e714e7cce6f2..94474f5f8bce 100644 --- a/drivers/block/cciss.c +++ b/drivers/block/cciss.c | |||
@@ -1389,8 +1389,8 @@ static void cciss_add_disk(ctlr_info_t *h, struct gendisk *disk, | |||
1389 | 1389 | ||
1390 | disk->queue->queuedata = h; | 1390 | disk->queue->queuedata = h; |
1391 | 1391 | ||
1392 | blk_queue_hardsect_size(disk->queue, | 1392 | blk_queue_logical_block_size(disk->queue, |
1393 | h->drv[drv_index].block_size); | 1393 | h->drv[drv_index].block_size); |
1394 | 1394 | ||
1395 | /* Make sure all queue data is written out before */ | 1395 | /* Make sure all queue data is written out before */ |
1396 | /* setting h->drv[drv_index].queue, as setting this */ | 1396 | /* setting h->drv[drv_index].queue, as setting this */ |
@@ -2298,7 +2298,7 @@ static int cciss_revalidate(struct gendisk *disk) | |||
2298 | cciss_geometry_inquiry(h->ctlr, logvol, 1, total_size, block_size, | 2298 | cciss_geometry_inquiry(h->ctlr, logvol, 1, total_size, block_size, |
2299 | inq_buff, drv); | 2299 | inq_buff, drv); |
2300 | 2300 | ||
2301 | blk_queue_hardsect_size(drv->queue, drv->block_size); | 2301 | blk_queue_logical_block_size(drv->queue, drv->block_size); |
2302 | set_capacity(disk, drv->nr_blocks); | 2302 | set_capacity(disk, drv->nr_blocks); |
2303 | 2303 | ||
2304 | kfree(inq_buff); | 2304 | kfree(inq_buff); |
diff --git a/drivers/block/cpqarray.c b/drivers/block/cpqarray.c index a02dcfc00f13..44fa2018f6b0 100644 --- a/drivers/block/cpqarray.c +++ b/drivers/block/cpqarray.c | |||
@@ -474,7 +474,7 @@ static int __init cpqarray_register_ctlr( int i, struct pci_dev *pdev) | |||
474 | disk->fops = &ida_fops; | 474 | disk->fops = &ida_fops; |
475 | if (j && !drv->nr_blks) | 475 | if (j && !drv->nr_blks) |
476 | continue; | 476 | continue; |
477 | blk_queue_hardsect_size(hba[i]->queue, drv->blk_size); | 477 | blk_queue_logical_block_size(hba[i]->queue, drv->blk_size); |
478 | set_capacity(disk, drv->nr_blks); | 478 | set_capacity(disk, drv->nr_blks); |
479 | disk->queue = hba[i]->queue; | 479 | disk->queue = hba[i]->queue; |
480 | disk->private_data = drv; | 480 | disk->private_data = drv; |
@@ -1546,7 +1546,7 @@ static int revalidate_allvol(ctlr_info_t *host) | |||
1546 | drv_info_t *drv = &host->drv[i]; | 1546 | drv_info_t *drv = &host->drv[i]; |
1547 | if (i && !drv->nr_blks) | 1547 | if (i && !drv->nr_blks) |
1548 | continue; | 1548 | continue; |
1549 | blk_queue_hardsect_size(host->queue, drv->blk_size); | 1549 | blk_queue_logical_block_size(host->queue, drv->blk_size); |
1550 | set_capacity(disk, drv->nr_blks); | 1550 | set_capacity(disk, drv->nr_blks); |
1551 | disk->queue = host->queue; | 1551 | disk->queue = host->queue; |
1552 | disk->private_data = drv; | 1552 | disk->private_data = drv; |
diff --git a/drivers/block/hd.c b/drivers/block/hd.c index 961de56d00a9..f65b3f369eb0 100644 --- a/drivers/block/hd.c +++ b/drivers/block/hd.c | |||
@@ -724,7 +724,7 @@ static int __init hd_init(void) | |||
724 | blk_queue_max_sectors(hd_queue, 255); | 724 | blk_queue_max_sectors(hd_queue, 255); |
725 | init_timer(&device_timer); | 725 | init_timer(&device_timer); |
726 | device_timer.function = hd_times_out; | 726 | device_timer.function = hd_times_out; |
727 | blk_queue_hardsect_size(hd_queue, 512); | 727 | blk_queue_logical_block_size(hd_queue, 512); |
728 | 728 | ||
729 | if (!NR_HD) { | 729 | if (!NR_HD) { |
730 | /* | 730 | /* |
diff --git a/drivers/block/mg_disk.c b/drivers/block/mg_disk.c index c0cd0a03f698..60de5a01e71e 100644 --- a/drivers/block/mg_disk.c +++ b/drivers/block/mg_disk.c | |||
@@ -996,7 +996,7 @@ static int mg_probe(struct platform_device *plat_dev) | |||
996 | goto probe_err_6; | 996 | goto probe_err_6; |
997 | } | 997 | } |
998 | blk_queue_max_sectors(host->breq, MG_MAX_SECTS); | 998 | blk_queue_max_sectors(host->breq, MG_MAX_SECTS); |
999 | blk_queue_hardsect_size(host->breq, MG_SECTOR_SIZE); | 999 | blk_queue_logical_block_size(host->breq, MG_SECTOR_SIZE); |
1000 | 1000 | ||
1001 | init_timer(&host->timer); | 1001 | init_timer(&host->timer); |
1002 | host->timer.function = mg_times_out; | 1002 | host->timer.function = mg_times_out; |
diff --git a/drivers/block/pktcdvd.c b/drivers/block/pktcdvd.c index dc7a8c352da2..293f5858921d 100644 --- a/drivers/block/pktcdvd.c +++ b/drivers/block/pktcdvd.c | |||
@@ -2657,7 +2657,7 @@ static void pkt_init_queue(struct pktcdvd_device *pd) | |||
2657 | struct request_queue *q = pd->disk->queue; | 2657 | struct request_queue *q = pd->disk->queue; |
2658 | 2658 | ||
2659 | blk_queue_make_request(q, pkt_make_request); | 2659 | blk_queue_make_request(q, pkt_make_request); |
2660 | blk_queue_hardsect_size(q, CD_FRAMESIZE); | 2660 | blk_queue_logical_block_size(q, CD_FRAMESIZE); |
2661 | blk_queue_max_sectors(q, PACKET_MAX_SECTORS); | 2661 | blk_queue_max_sectors(q, PACKET_MAX_SECTORS); |
2662 | blk_queue_merge_bvec(q, pkt_merge_bvec); | 2662 | blk_queue_merge_bvec(q, pkt_merge_bvec); |
2663 | q->queuedata = pd; | 2663 | q->queuedata = pd; |
diff --git a/drivers/block/ps3disk.c b/drivers/block/ps3disk.c index 338cee4cc0ba..aaeeb544228a 100644 --- a/drivers/block/ps3disk.c +++ b/drivers/block/ps3disk.c | |||
@@ -477,7 +477,7 @@ static int __devinit ps3disk_probe(struct ps3_system_bus_device *_dev) | |||
477 | blk_queue_max_sectors(queue, dev->bounce_size >> 9); | 477 | blk_queue_max_sectors(queue, dev->bounce_size >> 9); |
478 | blk_queue_segment_boundary(queue, -1UL); | 478 | blk_queue_segment_boundary(queue, -1UL); |
479 | blk_queue_dma_alignment(queue, dev->blk_size-1); | 479 | blk_queue_dma_alignment(queue, dev->blk_size-1); |
480 | blk_queue_hardsect_size(queue, dev->blk_size); | 480 | blk_queue_logical_block_size(queue, dev->blk_size); |
481 | 481 | ||
482 | blk_queue_ordered(queue, QUEUE_ORDERED_DRAIN_FLUSH, | 482 | blk_queue_ordered(queue, QUEUE_ORDERED_DRAIN_FLUSH, |
483 | ps3disk_prepare_flush); | 483 | ps3disk_prepare_flush); |
diff --git a/drivers/block/ub.c b/drivers/block/ub.c index e67bbae9547d..cc54473b8e77 100644 --- a/drivers/block/ub.c +++ b/drivers/block/ub.c | |||
@@ -722,7 +722,7 @@ static void ub_cmd_build_block(struct ub_dev *sc, struct ub_lun *lun, | |||
722 | /* | 722 | /* |
723 | * build the command | 723 | * build the command |
724 | * | 724 | * |
725 | * The call to blk_queue_hardsect_size() guarantees that request | 725 | * The call to blk_queue_logical_block_size() guarantees that request |
726 | * is aligned, but it is given in terms of 512 byte units, always. | 726 | * is aligned, but it is given in terms of 512 byte units, always. |
727 | */ | 727 | */ |
728 | block = blk_rq_pos(rq) >> lun->capacity.bshift; | 728 | block = blk_rq_pos(rq) >> lun->capacity.bshift; |
@@ -1749,7 +1749,7 @@ static int ub_bd_revalidate(struct gendisk *disk) | |||
1749 | ub_revalidate(lun->udev, lun); | 1749 | ub_revalidate(lun->udev, lun); |
1750 | 1750 | ||
1751 | /* XXX Support sector size switching like in sr.c */ | 1751 | /* XXX Support sector size switching like in sr.c */ |
1752 | blk_queue_hardsect_size(disk->queue, lun->capacity.bsize); | 1752 | blk_queue_logical_block_size(disk->queue, lun->capacity.bsize); |
1753 | set_capacity(disk, lun->capacity.nsec); | 1753 | set_capacity(disk, lun->capacity.nsec); |
1754 | // set_disk_ro(sdkp->disk, lun->readonly); | 1754 | // set_disk_ro(sdkp->disk, lun->readonly); |
1755 | 1755 | ||
@@ -2324,7 +2324,7 @@ static int ub_probe_lun(struct ub_dev *sc, int lnum) | |||
2324 | blk_queue_max_phys_segments(q, UB_MAX_REQ_SG); | 2324 | blk_queue_max_phys_segments(q, UB_MAX_REQ_SG); |
2325 | blk_queue_segment_boundary(q, 0xffffffff); /* Dubious. */ | 2325 | blk_queue_segment_boundary(q, 0xffffffff); /* Dubious. */ |
2326 | blk_queue_max_sectors(q, UB_MAX_SECTORS); | 2326 | blk_queue_max_sectors(q, UB_MAX_SECTORS); |
2327 | blk_queue_hardsect_size(q, lun->capacity.bsize); | 2327 | blk_queue_logical_block_size(q, lun->capacity.bsize); |
2328 | 2328 | ||
2329 | lun->disk = disk; | 2329 | lun->disk = disk; |
2330 | q->queuedata = lun; | 2330 | q->queuedata = lun; |
diff --git a/drivers/block/virtio_blk.c b/drivers/block/virtio_blk.c index 511d4ae2d176..c4845b169464 100644 --- a/drivers/block/virtio_blk.c +++ b/drivers/block/virtio_blk.c | |||
@@ -347,7 +347,7 @@ static int virtblk_probe(struct virtio_device *vdev) | |||
347 | offsetof(struct virtio_blk_config, blk_size), | 347 | offsetof(struct virtio_blk_config, blk_size), |
348 | &blk_size); | 348 | &blk_size); |
349 | if (!err) | 349 | if (!err) |
350 | blk_queue_hardsect_size(vblk->disk->queue, blk_size); | 350 | blk_queue_logical_block_size(vblk->disk->queue, blk_size); |
351 | 351 | ||
352 | add_disk(vblk->disk); | 352 | add_disk(vblk->disk); |
353 | return 0; | 353 | return 0; |
diff --git a/drivers/block/xen-blkfront.c b/drivers/block/xen-blkfront.c index 132120ae4bde..c1996829d5ec 100644 --- a/drivers/block/xen-blkfront.c +++ b/drivers/block/xen-blkfront.c | |||
@@ -344,7 +344,7 @@ static int xlvbd_init_blk_queue(struct gendisk *gd, u16 sector_size) | |||
344 | queue_flag_set_unlocked(QUEUE_FLAG_VIRT, rq); | 344 | queue_flag_set_unlocked(QUEUE_FLAG_VIRT, rq); |
345 | 345 | ||
346 | /* Hard sector size and max sectors impersonate the equiv. hardware. */ | 346 | /* Hard sector size and max sectors impersonate the equiv. hardware. */ |
347 | blk_queue_hardsect_size(rq, sector_size); | 347 | blk_queue_logical_block_size(rq, sector_size); |
348 | blk_queue_max_sectors(rq, 512); | 348 | blk_queue_max_sectors(rq, 512); |
349 | 349 | ||
350 | /* Each segment in a request is up to an aligned page in size. */ | 350 | /* Each segment in a request is up to an aligned page in size. */ |
diff --git a/drivers/block/xsysace.c b/drivers/block/xsysace.c index 3a4397edab71..f08491a3a813 100644 --- a/drivers/block/xsysace.c +++ b/drivers/block/xsysace.c | |||
@@ -984,7 +984,7 @@ static int __devinit ace_setup(struct ace_device *ace) | |||
984 | ace->queue = blk_init_queue(ace_request, &ace->lock); | 984 | ace->queue = blk_init_queue(ace_request, &ace->lock); |
985 | if (ace->queue == NULL) | 985 | if (ace->queue == NULL) |
986 | goto err_blk_initq; | 986 | goto err_blk_initq; |
987 | blk_queue_hardsect_size(ace->queue, 512); | 987 | blk_queue_logical_block_size(ace->queue, 512); |
988 | 988 | ||
989 | /* | 989 | /* |
990 | * Allocate and initialize GD structure | 990 | * Allocate and initialize GD structure |
diff --git a/drivers/cdrom/gdrom.c b/drivers/cdrom/gdrom.c index 1e366ad8f680..b5621f27c4be 100644 --- a/drivers/cdrom/gdrom.c +++ b/drivers/cdrom/gdrom.c | |||
@@ -739,7 +739,7 @@ static void __devinit probe_gdrom_setupdisk(void) | |||
739 | 739 | ||
740 | static int __devinit probe_gdrom_setupqueue(void) | 740 | static int __devinit probe_gdrom_setupqueue(void) |
741 | { | 741 | { |
742 | blk_queue_hardsect_size(gd.gdrom_rq, GDROM_HARD_SECTOR); | 742 | blk_queue_logical_block_size(gd.gdrom_rq, GDROM_HARD_SECTOR); |
743 | /* using DMA so memory will need to be contiguous */ | 743 | /* using DMA so memory will need to be contiguous */ |
744 | blk_queue_max_hw_segments(gd.gdrom_rq, 1); | 744 | blk_queue_max_hw_segments(gd.gdrom_rq, 1); |
745 | /* set a large max size to get most from DMA */ | 745 | /* set a large max size to get most from DMA */ |
diff --git a/drivers/cdrom/viocd.c b/drivers/cdrom/viocd.c index f177c2d4017f..0fff646cc2f0 100644 --- a/drivers/cdrom/viocd.c +++ b/drivers/cdrom/viocd.c | |||
@@ -469,8 +469,8 @@ static void vio_handle_cd_event(struct HvLpEvent *event) | |||
469 | case viocdopen: | 469 | case viocdopen: |
470 | if (event->xRc == 0) { | 470 | if (event->xRc == 0) { |
471 | di = &viocd_diskinfo[bevent->disk]; | 471 | di = &viocd_diskinfo[bevent->disk]; |
472 | blk_queue_hardsect_size(di->viocd_disk->queue, | 472 | blk_queue_logical_block_size(di->viocd_disk->queue, |
473 | bevent->block_size); | 473 | bevent->block_size); |
474 | set_capacity(di->viocd_disk, | 474 | set_capacity(di->viocd_disk, |
475 | bevent->media_size * | 475 | bevent->media_size * |
476 | bevent->block_size / 512); | 476 | bevent->block_size / 512); |
diff --git a/drivers/char/raw.c b/drivers/char/raw.c index 20d90e6a6e50..db32f0e4c7dd 100644 --- a/drivers/char/raw.c +++ b/drivers/char/raw.c | |||
@@ -71,7 +71,7 @@ static int raw_open(struct inode *inode, struct file *filp) | |||
71 | err = bd_claim(bdev, raw_open); | 71 | err = bd_claim(bdev, raw_open); |
72 | if (err) | 72 | if (err) |
73 | goto out1; | 73 | goto out1; |
74 | err = set_blocksize(bdev, bdev_hardsect_size(bdev)); | 74 | err = set_blocksize(bdev, bdev_logical_block_size(bdev)); |
75 | if (err) | 75 | if (err) |
76 | goto out2; | 76 | goto out2; |
77 | filp->f_flags |= O_DIRECT; | 77 | filp->f_flags |= O_DIRECT; |
diff --git a/drivers/ide/ide-cd.c b/drivers/ide/ide-cd.c index 1799328decfb..424140c6c400 100644 --- a/drivers/ide/ide-cd.c +++ b/drivers/ide/ide-cd.c | |||
@@ -182,7 +182,7 @@ static void cdrom_analyze_sense_data(ide_drive_t *drive, | |||
182 | (sense->information[2] << 8) | | 182 | (sense->information[2] << 8) | |
183 | (sense->information[3]); | 183 | (sense->information[3]); |
184 | 184 | ||
185 | if (drive->queue->hardsect_size == 2048) | 185 | if (queue_logical_block_size(drive->queue) == 2048) |
186 | /* device sector size is 2K */ | 186 | /* device sector size is 2K */ |
187 | sector <<= 2; | 187 | sector <<= 2; |
188 | 188 | ||
@@ -737,7 +737,7 @@ static ide_startstop_t cdrom_start_rw(ide_drive_t *drive, struct request *rq) | |||
737 | struct request_queue *q = drive->queue; | 737 | struct request_queue *q = drive->queue; |
738 | int write = rq_data_dir(rq) == WRITE; | 738 | int write = rq_data_dir(rq) == WRITE; |
739 | unsigned short sectors_per_frame = | 739 | unsigned short sectors_per_frame = |
740 | queue_hardsect_size(q) >> SECTOR_BITS; | 740 | queue_logical_block_size(q) >> SECTOR_BITS; |
741 | 741 | ||
742 | ide_debug_log(IDE_DBG_RQ, "rq->cmd[0]: 0x%x, rq->cmd_flags: 0x%x, " | 742 | ide_debug_log(IDE_DBG_RQ, "rq->cmd[0]: 0x%x, rq->cmd_flags: 0x%x, " |
743 | "secs_per_frame: %u", | 743 | "secs_per_frame: %u", |
@@ -1021,8 +1021,8 @@ int ide_cd_read_toc(ide_drive_t *drive, struct request_sense *sense) | |||
1021 | /* save a private copy of the TOC capacity for error handling */ | 1021 | /* save a private copy of the TOC capacity for error handling */ |
1022 | drive->probed_capacity = toc->capacity * sectors_per_frame; | 1022 | drive->probed_capacity = toc->capacity * sectors_per_frame; |
1023 | 1023 | ||
1024 | blk_queue_hardsect_size(drive->queue, | 1024 | blk_queue_logical_block_size(drive->queue, |
1025 | sectors_per_frame << SECTOR_BITS); | 1025 | sectors_per_frame << SECTOR_BITS); |
1026 | 1026 | ||
1027 | /* first read just the header, so we know how long the TOC is */ | 1027 | /* first read just the header, so we know how long the TOC is */ |
1028 | stat = cdrom_read_tocentry(drive, 0, 1, 0, (char *) &toc->hdr, | 1028 | stat = cdrom_read_tocentry(drive, 0, 1, 0, (char *) &toc->hdr, |
@@ -1338,7 +1338,7 @@ static int ide_cdrom_probe_capabilities(ide_drive_t *drive) | |||
1338 | /* standard prep_rq_fn that builds 10 byte cmds */ | 1338 | /* standard prep_rq_fn that builds 10 byte cmds */ |
1339 | static int ide_cdrom_prep_fs(struct request_queue *q, struct request *rq) | 1339 | static int ide_cdrom_prep_fs(struct request_queue *q, struct request *rq) |
1340 | { | 1340 | { |
1341 | int hard_sect = queue_hardsect_size(q); | 1341 | int hard_sect = queue_logical_block_size(q); |
1342 | long block = (long)blk_rq_pos(rq) / (hard_sect >> 9); | 1342 | long block = (long)blk_rq_pos(rq) / (hard_sect >> 9); |
1343 | unsigned long blocks = blk_rq_sectors(rq) / (hard_sect >> 9); | 1343 | unsigned long blocks = blk_rq_sectors(rq) / (hard_sect >> 9); |
1344 | 1344 | ||
@@ -1543,7 +1543,7 @@ static int ide_cdrom_setup(ide_drive_t *drive) | |||
1543 | 1543 | ||
1544 | nslots = ide_cdrom_probe_capabilities(drive); | 1544 | nslots = ide_cdrom_probe_capabilities(drive); |
1545 | 1545 | ||
1546 | blk_queue_hardsect_size(q, CD_FRAMESIZE); | 1546 | blk_queue_logical_block_size(q, CD_FRAMESIZE); |
1547 | 1547 | ||
1548 | if (ide_cdrom_register(drive, nslots)) { | 1548 | if (ide_cdrom_register(drive, nslots)) { |
1549 | printk(KERN_ERR PFX "%s: %s failed to register device with the" | 1549 | printk(KERN_ERR PFX "%s: %s failed to register device with the" |
diff --git a/drivers/md/bitmap.c b/drivers/md/bitmap.c index 47c68bc75a17..06b0ded1ce23 100644 --- a/drivers/md/bitmap.c +++ b/drivers/md/bitmap.c | |||
@@ -232,7 +232,7 @@ static struct page *read_sb_page(mddev_t *mddev, long offset, | |||
232 | target = rdev->sb_start + offset + index * (PAGE_SIZE/512); | 232 | target = rdev->sb_start + offset + index * (PAGE_SIZE/512); |
233 | 233 | ||
234 | if (sync_page_io(rdev->bdev, target, | 234 | if (sync_page_io(rdev->bdev, target, |
235 | roundup(size, bdev_hardsect_size(rdev->bdev)), | 235 | roundup(size, bdev_logical_block_size(rdev->bdev)), |
236 | page, READ)) { | 236 | page, READ)) { |
237 | page->index = index; | 237 | page->index = index; |
238 | attach_page_buffers(page, NULL); /* so that free_buffer will | 238 | attach_page_buffers(page, NULL); /* so that free_buffer will |
@@ -287,7 +287,7 @@ static int write_sb_page(struct bitmap *bitmap, struct page *page, int wait) | |||
287 | int size = PAGE_SIZE; | 287 | int size = PAGE_SIZE; |
288 | if (page->index == bitmap->file_pages-1) | 288 | if (page->index == bitmap->file_pages-1) |
289 | size = roundup(bitmap->last_page_size, | 289 | size = roundup(bitmap->last_page_size, |
290 | bdev_hardsect_size(rdev->bdev)); | 290 | bdev_logical_block_size(rdev->bdev)); |
291 | /* Just make sure we aren't corrupting data or | 291 | /* Just make sure we aren't corrupting data or |
292 | * metadata | 292 | * metadata |
293 | */ | 293 | */ |
diff --git a/drivers/md/dm-exception-store.c b/drivers/md/dm-exception-store.c index a2e26c242141..75d8081a9041 100644 --- a/drivers/md/dm-exception-store.c +++ b/drivers/md/dm-exception-store.c | |||
@@ -178,7 +178,7 @@ static int set_chunk_size(struct dm_exception_store *store, | |||
178 | } | 178 | } |
179 | 179 | ||
180 | /* Validate the chunk size against the device block size */ | 180 | /* Validate the chunk size against the device block size */ |
181 | if (chunk_size_ulong % (bdev_hardsect_size(store->cow->bdev) >> 9)) { | 181 | if (chunk_size_ulong % (bdev_logical_block_size(store->cow->bdev) >> 9)) { |
182 | *error = "Chunk size is not a multiple of device blocksize"; | 182 | *error = "Chunk size is not a multiple of device blocksize"; |
183 | return -EINVAL; | 183 | return -EINVAL; |
184 | } | 184 | } |
diff --git a/drivers/md/dm-log.c b/drivers/md/dm-log.c index be233bc4d917..6fa8ccf91c70 100644 --- a/drivers/md/dm-log.c +++ b/drivers/md/dm-log.c | |||
@@ -413,7 +413,8 @@ static int create_log_context(struct dm_dirty_log *log, struct dm_target *ti, | |||
413 | * Buffer holds both header and bitset. | 413 | * Buffer holds both header and bitset. |
414 | */ | 414 | */ |
415 | buf_size = dm_round_up((LOG_OFFSET << SECTOR_SHIFT) + | 415 | buf_size = dm_round_up((LOG_OFFSET << SECTOR_SHIFT) + |
416 | bitset_size, ti->limits.hardsect_size); | 416 | bitset_size, |
417 | ti->limits.logical_block_size); | ||
417 | 418 | ||
418 | if (buf_size > dev->bdev->bd_inode->i_size) { | 419 | if (buf_size > dev->bdev->bd_inode->i_size) { |
419 | DMWARN("log device %s too small: need %llu bytes", | 420 | DMWARN("log device %s too small: need %llu bytes", |
diff --git a/drivers/md/dm-snap-persistent.c b/drivers/md/dm-snap-persistent.c index e75c6dd76a9a..2662a41337e7 100644 --- a/drivers/md/dm-snap-persistent.c +++ b/drivers/md/dm-snap-persistent.c | |||
@@ -282,7 +282,7 @@ static int read_header(struct pstore *ps, int *new_snapshot) | |||
282 | */ | 282 | */ |
283 | if (!ps->store->chunk_size) { | 283 | if (!ps->store->chunk_size) { |
284 | ps->store->chunk_size = max(DM_CHUNK_SIZE_DEFAULT_SECTORS, | 284 | ps->store->chunk_size = max(DM_CHUNK_SIZE_DEFAULT_SECTORS, |
285 | bdev_hardsect_size(ps->store->cow->bdev) >> 9); | 285 | bdev_logical_block_size(ps->store->cow->bdev) >> 9); |
286 | ps->store->chunk_mask = ps->store->chunk_size - 1; | 286 | ps->store->chunk_mask = ps->store->chunk_size - 1; |
287 | ps->store->chunk_shift = ffs(ps->store->chunk_size) - 1; | 287 | ps->store->chunk_shift = ffs(ps->store->chunk_size) - 1; |
288 | chunk_size_supplied = 0; | 288 | chunk_size_supplied = 0; |
diff --git a/drivers/md/dm-table.c b/drivers/md/dm-table.c index 429b50b975d5..65e2d9759857 100644 --- a/drivers/md/dm-table.c +++ b/drivers/md/dm-table.c | |||
@@ -108,7 +108,8 @@ static void combine_restrictions_low(struct io_restrictions *lhs, | |||
108 | lhs->max_hw_segments = | 108 | lhs->max_hw_segments = |
109 | min_not_zero(lhs->max_hw_segments, rhs->max_hw_segments); | 109 | min_not_zero(lhs->max_hw_segments, rhs->max_hw_segments); |
110 | 110 | ||
111 | lhs->hardsect_size = max(lhs->hardsect_size, rhs->hardsect_size); | 111 | lhs->logical_block_size = max(lhs->logical_block_size, |
112 | rhs->logical_block_size); | ||
112 | 113 | ||
113 | lhs->max_segment_size = | 114 | lhs->max_segment_size = |
114 | min_not_zero(lhs->max_segment_size, rhs->max_segment_size); | 115 | min_not_zero(lhs->max_segment_size, rhs->max_segment_size); |
@@ -529,7 +530,8 @@ void dm_set_device_limits(struct dm_target *ti, struct block_device *bdev) | |||
529 | rs->max_hw_segments = | 530 | rs->max_hw_segments = |
530 | min_not_zero(rs->max_hw_segments, q->max_hw_segments); | 531 | min_not_zero(rs->max_hw_segments, q->max_hw_segments); |
531 | 532 | ||
532 | rs->hardsect_size = max(rs->hardsect_size, q->hardsect_size); | 533 | rs->logical_block_size = max(rs->logical_block_size, |
534 | queue_logical_block_size(q)); | ||
533 | 535 | ||
534 | rs->max_segment_size = | 536 | rs->max_segment_size = |
535 | min_not_zero(rs->max_segment_size, q->max_segment_size); | 537 | min_not_zero(rs->max_segment_size, q->max_segment_size); |
@@ -683,8 +685,8 @@ static void check_for_valid_limits(struct io_restrictions *rs) | |||
683 | rs->max_phys_segments = MAX_PHYS_SEGMENTS; | 685 | rs->max_phys_segments = MAX_PHYS_SEGMENTS; |
684 | if (!rs->max_hw_segments) | 686 | if (!rs->max_hw_segments) |
685 | rs->max_hw_segments = MAX_HW_SEGMENTS; | 687 | rs->max_hw_segments = MAX_HW_SEGMENTS; |
686 | if (!rs->hardsect_size) | 688 | if (!rs->logical_block_size) |
687 | rs->hardsect_size = 1 << SECTOR_SHIFT; | 689 | rs->logical_block_size = 1 << SECTOR_SHIFT; |
688 | if (!rs->max_segment_size) | 690 | if (!rs->max_segment_size) |
689 | rs->max_segment_size = MAX_SEGMENT_SIZE; | 691 | rs->max_segment_size = MAX_SEGMENT_SIZE; |
690 | if (!rs->seg_boundary_mask) | 692 | if (!rs->seg_boundary_mask) |
@@ -914,7 +916,7 @@ void dm_table_set_restrictions(struct dm_table *t, struct request_queue *q) | |||
914 | blk_queue_max_sectors(q, t->limits.max_sectors); | 916 | blk_queue_max_sectors(q, t->limits.max_sectors); |
915 | q->max_phys_segments = t->limits.max_phys_segments; | 917 | q->max_phys_segments = t->limits.max_phys_segments; |
916 | q->max_hw_segments = t->limits.max_hw_segments; | 918 | q->max_hw_segments = t->limits.max_hw_segments; |
917 | q->hardsect_size = t->limits.hardsect_size; | 919 | q->logical_block_size = t->limits.logical_block_size; |
918 | q->max_segment_size = t->limits.max_segment_size; | 920 | q->max_segment_size = t->limits.max_segment_size; |
919 | q->max_hw_sectors = t->limits.max_hw_sectors; | 921 | q->max_hw_sectors = t->limits.max_hw_sectors; |
920 | q->seg_boundary_mask = t->limits.seg_boundary_mask; | 922 | q->seg_boundary_mask = t->limits.seg_boundary_mask; |
diff --git a/drivers/md/md.c b/drivers/md/md.c index fccc8343a250..4cbc19f5c304 100644 --- a/drivers/md/md.c +++ b/drivers/md/md.c | |||
@@ -1202,7 +1202,7 @@ static int super_1_load(mdk_rdev_t *rdev, mdk_rdev_t *refdev, int minor_version) | |||
1202 | atomic_set(&rdev->corrected_errors, le32_to_cpu(sb->cnt_corrected_read)); | 1202 | atomic_set(&rdev->corrected_errors, le32_to_cpu(sb->cnt_corrected_read)); |
1203 | 1203 | ||
1204 | rdev->sb_size = le32_to_cpu(sb->max_dev) * 2 + 256; | 1204 | rdev->sb_size = le32_to_cpu(sb->max_dev) * 2 + 256; |
1205 | bmask = queue_hardsect_size(rdev->bdev->bd_disk->queue)-1; | 1205 | bmask = queue_logical_block_size(rdev->bdev->bd_disk->queue)-1; |
1206 | if (rdev->sb_size & bmask) | 1206 | if (rdev->sb_size & bmask) |
1207 | rdev->sb_size = (rdev->sb_size | bmask) + 1; | 1207 | rdev->sb_size = (rdev->sb_size | bmask) + 1; |
1208 | 1208 | ||
diff --git a/drivers/memstick/core/mspro_block.c b/drivers/memstick/core/mspro_block.c index c0bebc6a2f2c..7847bbc1440d 100644 --- a/drivers/memstick/core/mspro_block.c +++ b/drivers/memstick/core/mspro_block.c | |||
@@ -1242,7 +1242,7 @@ static int mspro_block_init_disk(struct memstick_dev *card) | |||
1242 | 1242 | ||
1243 | sprintf(msb->disk->disk_name, "mspblk%d", disk_id); | 1243 | sprintf(msb->disk->disk_name, "mspblk%d", disk_id); |
1244 | 1244 | ||
1245 | blk_queue_hardsect_size(msb->queue, msb->page_size); | 1245 | blk_queue_logical_block_size(msb->queue, msb->page_size); |
1246 | 1246 | ||
1247 | capacity = be16_to_cpu(sys_info->user_block_count); | 1247 | capacity = be16_to_cpu(sys_info->user_block_count); |
1248 | capacity *= be16_to_cpu(sys_info->block_size); | 1248 | capacity *= be16_to_cpu(sys_info->block_size); |
diff --git a/drivers/message/i2o/i2o_block.c b/drivers/message/i2o/i2o_block.c index 6573ef4408f1..335d4c78a775 100644 --- a/drivers/message/i2o/i2o_block.c +++ b/drivers/message/i2o/i2o_block.c | |||
@@ -794,8 +794,9 @@ static int i2o_block_transfer(struct request *req) | |||
794 | if (c->adaptec) { | 794 | if (c->adaptec) { |
795 | u8 cmd[10]; | 795 | u8 cmd[10]; |
796 | u32 scsi_flags; | 796 | u32 scsi_flags; |
797 | u16 hwsec = queue_hardsect_size(req->q) >> KERNEL_SECTOR_SHIFT; | 797 | u16 hwsec; |
798 | 798 | ||
799 | hwsec = queue_logical_block_size(req->q) >> KERNEL_SECTOR_SHIFT; | ||
799 | memset(cmd, 0, 10); | 800 | memset(cmd, 0, 10); |
800 | 801 | ||
801 | sgl_offset = SGL_OFFSET_12; | 802 | sgl_offset = SGL_OFFSET_12; |
@@ -1078,7 +1079,7 @@ static int i2o_block_probe(struct device *dev) | |||
1078 | */ | 1079 | */ |
1079 | if (!i2o_parm_field_get(i2o_dev, 0x0004, 1, &blocksize, 4) || | 1080 | if (!i2o_parm_field_get(i2o_dev, 0x0004, 1, &blocksize, 4) || |
1080 | !i2o_parm_field_get(i2o_dev, 0x0000, 3, &blocksize, 4)) { | 1081 | !i2o_parm_field_get(i2o_dev, 0x0000, 3, &blocksize, 4)) { |
1081 | blk_queue_hardsect_size(queue, le32_to_cpu(blocksize)); | 1082 | blk_queue_logical_block_size(queue, le32_to_cpu(blocksize)); |
1082 | } else | 1083 | } else |
1083 | osm_warn("unable to get blocksize of %s\n", gd->disk_name); | 1084 | osm_warn("unable to get blocksize of %s\n", gd->disk_name); |
1084 | 1085 | ||
diff --git a/drivers/mmc/card/block.c b/drivers/mmc/card/block.c index c5df86546458..98ffc41eaf2c 100644 --- a/drivers/mmc/card/block.c +++ b/drivers/mmc/card/block.c | |||
@@ -521,7 +521,7 @@ static struct mmc_blk_data *mmc_blk_alloc(struct mmc_card *card) | |||
521 | 521 | ||
522 | sprintf(md->disk->disk_name, "mmcblk%d", devidx); | 522 | sprintf(md->disk->disk_name, "mmcblk%d", devidx); |
523 | 523 | ||
524 | blk_queue_hardsect_size(md->queue.queue, 512); | 524 | blk_queue_logical_block_size(md->queue.queue, 512); |
525 | 525 | ||
526 | if (!mmc_card_sd(card) && mmc_card_blockaddr(card)) { | 526 | if (!mmc_card_sd(card) && mmc_card_blockaddr(card)) { |
527 | /* | 527 | /* |
diff --git a/drivers/mtd/mtd_blkdevs.c b/drivers/mtd/mtd_blkdevs.c index 502622f628bc..aaac3b6800b7 100644 --- a/drivers/mtd/mtd_blkdevs.c +++ b/drivers/mtd/mtd_blkdevs.c | |||
@@ -378,7 +378,7 @@ int register_mtd_blktrans(struct mtd_blktrans_ops *tr) | |||
378 | } | 378 | } |
379 | 379 | ||
380 | tr->blkcore_priv->rq->queuedata = tr; | 380 | tr->blkcore_priv->rq->queuedata = tr; |
381 | blk_queue_hardsect_size(tr->blkcore_priv->rq, tr->blksize); | 381 | blk_queue_logical_block_size(tr->blkcore_priv->rq, tr->blksize); |
382 | if (tr->discard) | 382 | if (tr->discard) |
383 | blk_queue_set_discard(tr->blkcore_priv->rq, | 383 | blk_queue_set_discard(tr->blkcore_priv->rq, |
384 | blktrans_discard_request); | 384 | blktrans_discard_request); |
diff --git a/drivers/s390/block/dasd.c b/drivers/s390/block/dasd.c index e64f62d5e0fc..27a1be0cd4d4 100644 --- a/drivers/s390/block/dasd.c +++ b/drivers/s390/block/dasd.c | |||
@@ -1990,7 +1990,7 @@ static void dasd_setup_queue(struct dasd_block *block) | |||
1990 | { | 1990 | { |
1991 | int max; | 1991 | int max; |
1992 | 1992 | ||
1993 | blk_queue_hardsect_size(block->request_queue, block->bp_block); | 1993 | blk_queue_logical_block_size(block->request_queue, block->bp_block); |
1994 | max = block->base->discipline->max_blocks << block->s2b_shift; | 1994 | max = block->base->discipline->max_blocks << block->s2b_shift; |
1995 | blk_queue_max_sectors(block->request_queue, max); | 1995 | blk_queue_max_sectors(block->request_queue, max); |
1996 | blk_queue_max_phys_segments(block->request_queue, -1L); | 1996 | blk_queue_max_phys_segments(block->request_queue, -1L); |
diff --git a/drivers/s390/block/dcssblk.c b/drivers/s390/block/dcssblk.c index cfdcf1aed33c..a4c7ffcd9987 100644 --- a/drivers/s390/block/dcssblk.c +++ b/drivers/s390/block/dcssblk.c | |||
@@ -602,7 +602,7 @@ dcssblk_add_store(struct device *dev, struct device_attribute *attr, const char | |||
602 | dev_info->gd->private_data = dev_info; | 602 | dev_info->gd->private_data = dev_info; |
603 | dev_info->gd->driverfs_dev = &dev_info->dev; | 603 | dev_info->gd->driverfs_dev = &dev_info->dev; |
604 | blk_queue_make_request(dev_info->dcssblk_queue, dcssblk_make_request); | 604 | blk_queue_make_request(dev_info->dcssblk_queue, dcssblk_make_request); |
605 | blk_queue_hardsect_size(dev_info->dcssblk_queue, 4096); | 605 | blk_queue_logical_block_size(dev_info->dcssblk_queue, 4096); |
606 | 606 | ||
607 | seg_byte_size = (dev_info->end - dev_info->start + 1); | 607 | seg_byte_size = (dev_info->end - dev_info->start + 1); |
608 | set_capacity(dev_info->gd, seg_byte_size >> 9); // size in sectors | 608 | set_capacity(dev_info->gd, seg_byte_size >> 9); // size in sectors |
diff --git a/drivers/s390/block/xpram.c b/drivers/s390/block/xpram.c index 76814f3e898a..0ae0c83ef879 100644 --- a/drivers/s390/block/xpram.c +++ b/drivers/s390/block/xpram.c | |||
@@ -343,7 +343,7 @@ static int __init xpram_setup_blkdev(void) | |||
343 | goto out; | 343 | goto out; |
344 | } | 344 | } |
345 | blk_queue_make_request(xpram_queues[i], xpram_make_request); | 345 | blk_queue_make_request(xpram_queues[i], xpram_make_request); |
346 | blk_queue_hardsect_size(xpram_queues[i], 4096); | 346 | blk_queue_logical_block_size(xpram_queues[i], 4096); |
347 | } | 347 | } |
348 | 348 | ||
349 | /* | 349 | /* |
diff --git a/drivers/s390/char/tape_block.c b/drivers/s390/char/tape_block.c index 1e7967675980..47ff695255ea 100644 --- a/drivers/s390/char/tape_block.c +++ b/drivers/s390/char/tape_block.c | |||
@@ -222,7 +222,7 @@ tapeblock_setup_device(struct tape_device * device) | |||
222 | if (rc) | 222 | if (rc) |
223 | goto cleanup_queue; | 223 | goto cleanup_queue; |
224 | 224 | ||
225 | blk_queue_hardsect_size(blkdat->request_queue, TAPEBLOCK_HSEC_SIZE); | 225 | blk_queue_logical_block_size(blkdat->request_queue, TAPEBLOCK_HSEC_SIZE); |
226 | blk_queue_max_sectors(blkdat->request_queue, TAPEBLOCK_MAX_SEC); | 226 | blk_queue_max_sectors(blkdat->request_queue, TAPEBLOCK_MAX_SEC); |
227 | blk_queue_max_phys_segments(blkdat->request_queue, -1L); | 227 | blk_queue_max_phys_segments(blkdat->request_queue, -1L); |
228 | blk_queue_max_hw_segments(blkdat->request_queue, -1L); | 228 | blk_queue_max_hw_segments(blkdat->request_queue, -1L); |
diff --git a/drivers/scsi/sd.c b/drivers/scsi/sd.c index 40d2860f235a..bcf3bd40bbd5 100644 --- a/drivers/scsi/sd.c +++ b/drivers/scsi/sd.c | |||
@@ -1510,7 +1510,7 @@ got_data: | |||
1510 | */ | 1510 | */ |
1511 | sector_size = 512; | 1511 | sector_size = 512; |
1512 | } | 1512 | } |
1513 | blk_queue_hardsect_size(sdp->request_queue, sector_size); | 1513 | blk_queue_logical_block_size(sdp->request_queue, sector_size); |
1514 | 1514 | ||
1515 | { | 1515 | { |
1516 | char cap_str_2[10], cap_str_10[10]; | 1516 | char cap_str_2[10], cap_str_10[10]; |
diff --git a/drivers/scsi/sr.c b/drivers/scsi/sr.c index fddba53c7fe5..cd350dfc1216 100644 --- a/drivers/scsi/sr.c +++ b/drivers/scsi/sr.c | |||
@@ -727,7 +727,7 @@ static void get_sectorsize(struct scsi_cd *cd) | |||
727 | } | 727 | } |
728 | 728 | ||
729 | queue = cd->device->request_queue; | 729 | queue = cd->device->request_queue; |
730 | blk_queue_hardsect_size(queue, sector_size); | 730 | blk_queue_logical_block_size(queue, sector_size); |
731 | 731 | ||
732 | return; | 732 | return; |
733 | } | 733 | } |