Re: 2 PATCHES: fix request_tranferlength

Matthew Dharm
2002-07-27T22:07:06Z

[-- Attachment #1: Type: text/plain, Size: 4101 bytes --]

I haven't seen these patches integrated into a kernel yet... have I just
missed them, or is there some reason they have been rejected?

Matt

On Sun, Jul 21, 2002 at 03:15:23PM -0700, Matthew Dharm wrote:
> These two BK patches fix two instances where a command is issued with an
> incorrect transfer length. The first is in the probing code... the section
> where we make the second INQUIRY request for the full INQUIRY data. The
> second is in sd.c where the MODE_SENSE request is issued.
>
> Both of these patches are requred to allow usb-storage devices to work
> properly. As a side-effect, this should reduce problems for all 'emulated
> scsi' systems (ide-scsi, sbp2, etc).
>
> Is there someone in particular I should send them to? In the USB world,
> all patches go to Greg K-H... what's the procedure here in SCSI land?
>
> Matt
>
> # This is a BitKeeper generated patch for the following project:
> # Project Name: greg k-h's linux 2.5 USB kernel tree
> # This patch format is intended for GNU patch command version 2.5 or higher.
> # This patch includes the following deltas:
> # ChangeSet 1.594 -> 1.595
> # drivers/scsi/scsi_scan.c 1.9 -> 1.10
> #
> # The following is the BitKeeper ChangeSet Log
> # --------------------------------------------
> # 02/07/20 mdharm@zen.san.one-eyed-alien.net 1.595
> # Fixed one of the INQUIRY commands used for probing SCSI devices. This
> # badly-formed command was trapped by the usb-storage driver BUG_ON() which
> # is designed to stop command with a badly formed transfer_length field.
> # --------------------------------------------
> #
> diff -Nru a/drivers/scsi/scsi_scan.c b/drivers/scsi/scsi_scan.c
> --- a/drivers/scsi/scsi_scan.c Sun Jul 21 00:55:37 2002
> +++ b/drivers/scsi/scsi_scan.c Sun Jul 21 00:55:37 2002
> @@ -717,7 +717,7 @@
>
> scsi_wait_req (SRpnt, (void *) scsi_cmd,
> (void *) scsi_result,
> - 256, SCSI_TIMEOUT+4*HZ, 3);
> + scsi_cmd[4], SCSI_TIMEOUT+4*HZ, 3);
> /* assume successful */
> }
> SDpnt->inquiry_len = possible_inq_resp_len;
>
>
> # This is a BitKeeper generated patch for the following project:
> # Project Name: greg k-h's linux 2.5 USB kernel tree
> # This patch format is intended for GNU patch command version 2.5 or higher.
> # This patch includes the following deltas:
> # ChangeSet 1.595 -> 1.596
> # drivers/scsi/sd.c 1.22 -> 1.23
> #
> # The following is the BitKeeper ChangeSet Log
> # --------------------------------------------
> # 02/07/20 greg@kroah.com 1.7.2.39
> # patch-2.5.27
> # --------------------------------------------
> # 02/07/20 greg@kroah.com 1.561.1.124
> # Merge kroah.com:/home/linux/linux/linux-2.5
> # into kroah.com:/home/linux/linux/tmp/linux-2.5
> # --------------------------------------------
> # 02/07/20 mdharm@zen.san.one-eyed-alien.net 1.596
> # Modified the MODE_SENSE write-protect test in sd.c to issue a SCSI request
> # with the request_bufflen the same size as the MODE_SENSE command being
> # issued requests.
> # --------------------------------------------
> #
> diff -Nru a/drivers/scsi/sd.c b/drivers/scsi/sd.c
> --- a/drivers/scsi/sd.c Sun Jul 21 00:55:44 2002
> +++ b/drivers/scsi/sd.c Sun Jul 21 00:55:44 2002
> @@ -1102,7 +1102,7 @@
> SRpnt->sr_data_direction = SCSI_DATA_READ;
>
> scsi_wait_req(SRpnt, (void *) cmd, (void *) buffer,
> - 512, SD_TIMEOUT, MAX_RETRIES);
> + 255, SD_TIMEOUT, MAX_RETRIES);
>
> the_result = SRpnt->sr_result;
>
> --
> Matthew Dharm Home: mdharm-usb@one-eyed-alien.net
> Maintainer, Linux USB Mass Storage Driver
>
> C: Like the Furby?
> DP: He gives me the creeps. Think the SPCA will take him?
> -- Cobb and Dust Puppy
> User Friendly, 1/2/1999

--
Matthew Dharm Home: mdharm-usb@one-eyed-alien.net
Maintainer, Linux USB Mass Storage Driver

I say, what are all those naked people doing?
-- Big client to Stef
User Friendly, 12/14/1997

[-- Attachment #2: Type: application/pgp-signature, Size: 232 bytes --]