summaryrefslogtreecommitdiffstats
path: root/drivers/scsi/aacraid
diff options
context:
space:
mode:
authorMark Haverkamp <markh@osdl.org>2006-01-11 18:28:07 +0100
committerJames Bottomley <jejb@mulgrave.(none)>2006-01-12 18:54:29 +0100
commit6e289a9023d589c24f86b29186d324215cdc9947 (patch)
tree6976b28a4df6b0cd2d30f450d16576d398deee14 /drivers/scsi/aacraid
parent[SCSI] sas: clear parent->rphy in sas_rphy_delete (diff)
downloadlinux-6e289a9023d589c24f86b29186d324215cdc9947.tar.xz
linux-6e289a9023d589c24f86b29186d324215cdc9947.zip
[SCSI] aacraid: Fix default FIB size
Received from Mark Salyzyn. If the adapter has not instructed us otherwise that it can handle a 'large' FIB, then it can handle at most a 2KB FIB. Signed-off-by: Mark Haverkamp <markh@osdl.org> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Diffstat (limited to 'drivers/scsi/aacraid')
-rw-r--r--drivers/scsi/aacraid/commctrl.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/scsi/aacraid/commctrl.c b/drivers/scsi/aacraid/commctrl.c
index ef623bd965f5..4fe79cd7c957 100644
--- a/drivers/scsi/aacraid/commctrl.c
+++ b/drivers/scsi/aacraid/commctrl.c
@@ -85,6 +85,10 @@ static int ioctl_send_fib(struct aac_dev * dev, void __user *arg)
if (size < le16_to_cpu(kfib->header.SenderSize))
size = le16_to_cpu(kfib->header.SenderSize);
if (size > dev->max_fib_size) {
+ if (size > 2048) {
+ retval = -EINVAL;
+ goto cleanup;
+ }
/* Highjack the hw_fib */
hw_fib = fibptr->hw_fib;
hw_fib_pa = fibptr->hw_fib_pa;