diff options
author | Stefan Richter <stefanr@s5r6.in-berlin.de> | 2007-06-17 23:52:08 +0200 |
---|---|---|
committer | Stefan Richter <stefanr@s5r6.in-berlin.de> | 2007-07-10 00:07:44 +0200 |
commit | cf47c7a26ca13b944900dce208890c5b6d5f3a14 (patch) | |
tree | b0351b1c0124ad80ea09631ccfc9e1c3ba6b9dd2 /drivers/firewire/fw-sbp2.c | |
parent | dae1a3aa8ebdd30fbba56a8d4e22f92455fb0861 (diff) |
firewire: fw-sbp2: implement max sectors limit for some old bridges
This currently only affects one bridge in the hardwired blacklist.
I don't own one of those, hence haven't tested it.
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
Diffstat (limited to 'drivers/firewire/fw-sbp2.c')
-rw-r--r-- | drivers/firewire/fw-sbp2.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/firewire/fw-sbp2.c b/drivers/firewire/fw-sbp2.c index 851c2da060d..49f7fd52ae8 100644 --- a/drivers/firewire/fw-sbp2.c +++ b/drivers/firewire/fw-sbp2.c @@ -34,6 +34,7 @@ #include <linux/device.h> #include <linux/scatterlist.h> #include <linux/dma-mapping.h> +#include <linux/blkdev.h> #include <linux/timer.h> #include <scsi/scsi.h> @@ -1080,7 +1081,8 @@ static int sbp2_scsi_slave_configure(struct scsi_device *sdev) fw_notify("setting fix_capacity for %s\n", unit->device.bus_id); sdev->fix_capacity = 1; } - + if (sd->workarounds & SBP2_WORKAROUND_128K_MAX_TRANS) + blk_queue_max_sectors(sdev->request_queue, 128 * 1024 / 512); return 0; } |