Re: [Patch] ibmvscsi compatibility fix

Serge E. Hallyn
2005-09-13T19:17:39Z

Works like a charm on my machine with 2.6.13-mm2.

thanks,
-serge

Quoting Dave C Boutcher (sleddog@us.ibm.com):
> Linda Xie ever so gently pointed out that she had a patch
> to preserve compatibility with older SLES targets, and I told
> her we didn't need to push it to mainline.
>
> This patch explicitly checks the version of the IBMVSCSI target
> and ensures that large scatterlists are not sent to older
> targets.
>
> Andrew, while this stuff usually goes through James, it would
> probably make Serge happier if you could pick it up for the next
> mm.
>
> Signed-off-by: Linda Xie <lxie@us.ibm.com>
> Signed-off-by: Dave Boutcher <boutcher@us.ibm.com>
>
> --- linux-2.6.13-mm3-orig/drivers/scsi/ibmvscsi/ibmvscsi.c 2005-09-13 09:50:31.000000000 -0500
> +++ linux-2.6.13.1/drivers/scsi/ibmvscsi/ibmvscsi.c 2005-09-13 09:09:41.000000000 -0500
> @@ -727,6 +727,16 @@
> if (hostdata->madapter_info.port_max_txu[0])
> hostdata->host->max_sectors =
> hostdata->madapter_info.port_max_txu[0] >> 9;
> +
> + if (hostdata->madapter_info.os_type == 3 &&
> + strcmp(hostdata->madapter_info.srp_version, "1.6a") <= 0) {
> + printk("ibmvscsi: host (Ver. %s) doesn't support large"
> + "transfers\n",
> + hostdata->madapter_info.srp_version);
> + printk("ibmvscsi: limiting scatterlists to %d\n",
> + MAX_INDIRECT_BUFS);
> + hostdata->host->sg_tablesize = MAX_INDIRECT_BUFS;
> + }
> }
> }
>
>