Withdrawn. blk_queue_max_hw_sectors() is not called in hosts.c but in scsi_lib.c. However, it does not check the dev->max_sectors set in libata-core.c. So everything of this patch is wrong. Will rewrite and resend the second patch. On 9 August 2016 at 18:31, <tom.ty89@xxxxxxxxx> wrote: > From: Tom Yan <tom.ty89@xxxxxxxxx> > > We should just let the scsi driver (hosts.c) call the function. It > has better heuristic anyway (i.e. use SCSI_DEFAULT_MAX_SECTORS as > fallback when max_sectors is not set). > > diff --git a/drivers/ata/libata-scsi.c b/drivers/ata/libata-scsi.c > index 2bdb5da..495d916 100644 > --- a/drivers/ata/libata-scsi.c > +++ b/drivers/ata/libata-scsi.c > @@ -1204,9 +1204,6 @@ static int ata_scsi_dev_config(struct scsi_device *sdev, > if (!ata_id_has_unload(dev->id)) > dev->flags |= ATA_DFLAG_NO_UNLOAD; > > - /* configure max sectors */ > - blk_queue_max_hw_sectors(q, dev->max_sectors); > - > if (dev->class == ATA_DEV_ATAPI) { > void *buf; > > -- > 2.9.2 > -- To unsubscribe from this list: send the line "unsubscribe linux-block" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html