|
@@ -2867,10 +2867,10 @@ static int sd_revalidate_disk(struct gendisk *disk)
|
|
|
if (sdkp->opt_xfer_blocks &&
|
|
|
sdkp->opt_xfer_blocks <= dev_max &&
|
|
|
sdkp->opt_xfer_blocks <= SD_DEF_XFER_BLOCKS &&
|
|
|
- sdkp->opt_xfer_blocks * sdp->sector_size >= PAGE_SIZE)
|
|
|
- rw_max = q->limits.io_opt =
|
|
|
- sdkp->opt_xfer_blocks * sdp->sector_size;
|
|
|
- else
|
|
|
+ logical_to_bytes(sdp, sdkp->opt_xfer_blocks) >= PAGE_SIZE) {
|
|
|
+ q->limits.io_opt = logical_to_bytes(sdp, sdkp->opt_xfer_blocks);
|
|
|
+ rw_max = logical_to_sectors(sdp, sdkp->opt_xfer_blocks);
|
|
|
+ } else
|
|
|
rw_max = BLK_DEF_MAX_SECTORS;
|
|
|
|
|
|
/* Combine with controller limits */
|