Re: [PATCH 1/1] sg: Remove aha1542 hack

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



brking@xxxxxxxxxx wrote:
> Remove a hack in the sg driver that alters the total buffer
> length for SG_IO commands to ensure buffers are not odd byte
> lengths. This breaks on the ipr driver since it requires the
> request_bufflen to equal the length specified in the cdb.
> The block layer SG_IO code does not appear to have this hack.

Brian,
Yes, that is ok with me. The aha1542 may not be
the only adapter sensitive to odd data transfer
lengths. In the spirit of a pass through we can
let the user round up to even if it is needed.

The _original_ block layer SG_IO code didn't have
a "hack" called error processing either :-)

The ipr driver looking inside the cdb to determine
data transfer length is a dangerous procedure. Does
the ipr driver support vendor specific commands?
Even the ubiquitous INQUIRY cdb is tricky since byte 3
became the upper 8 bits of the allocation length in
SPC-3 (it was reserved before that). So does the
driver interpret it as active depending on the age
of the lu?

Signed-off-by: Douglas Gilbert <dougg@xxxxxxxxxx>

> Signed-off-by: Brian King <brking@xxxxxxxxxx>
> ---
> 
>  linux-2.6-bjking1/drivers/scsi/sg.c |    2 +-
>  1 files changed, 1 insertion(+), 1 deletion(-)
> 
> diff -puN drivers/scsi/sg.c~sg_remove_aha1542_hack drivers/scsi/sg.c
> --- linux-2.6/drivers/scsi/sg.c~sg_remove_aha1542_hack	2006-01-17 16:50:16.000000000 -0600
> +++ linux-2.6-bjking1/drivers/scsi/sg.c	2006-01-17 16:50:29.000000000 -0600
> @@ -2162,7 +2162,7 @@ sg_link_reserve(Sg_fd * sfp, Sg_request 
>  
>  	srp->res_used = 1;
>  	SCSI_LOG_TIMEOUT(4, printk("sg_link_reserve: size=%d\n", size));
> -	rem = size = (size + 1) & (~1);	/* round to even for aha1542 */
> +	rem = size;
>  
>  	for (k = 0; k < rsv_schp->k_use_sg; ++k, ++sg) {
>  		num = sg->length;
> _
> 

-
: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]
  Powered by Linux