Re: mysterious shifts in USB storage drivers.

From: Matthew Dharm (mdharm-kernel@one-eyed-alien.net)
Date: Thu May 15 2003 - 02:14:59 EST


Hrm... nothing in the logs, but I remember this. Apparently, the
srb->result field actually requires this format. If you look at other LLDD
code in linux/drivers/scsi/ you'll see that the << 1 is common.

This should be in 2.5... I thought it already was.

Matt

On Wed, May 14, 2003 at 09:56:37PM -0700, Greg KH wrote:
> On Thu, May 15, 2003 at 04:31:17AM +0100, davej@codemonkey.org.uk wrote:
> > These went into 2.4 over a year ago. Unfortunatly,
> > with no comments in the logs.
>
> My logs show this went into 2.4 with this comment:
>
> usb-storage: ISD-200 fixes, more unusual devices, and many cleanups
>
> (o) Fix to ISD-200 driver to work on big-endian platforms, including PPC.
> This has been in circulation for a while, and seems well-tested.
> (o) Add several unusual_devs.h entries
> (o) A couple more debugging improvements
> (o) A slight improvement to the EXPERIMENTAL HP82xx driver, which should
> help with newer units.
> (o) A _major_ cleanup of error handling code throughout the driver. Note
> that this is in preparation to deploy the new error-handling state
> machine (special thanks to Alan Sterm for this work). Right now, the
> optimizations are simple and straightforward (elimination of redundant
> code paths, etc). Nothing tremendous, but it looks kinda invasive.
>
> So this was a tiny part of a bigger patch. I defer to Matt as to if
> this kind of change should be put into 2.5.
>
> thanks,
>
> greg k-h
>
> > diff -urpN --exclude-from=/home/davej/.exclude bk-linus/drivers/usb/storage/datafab.c linux-2.5/drivers/usb/storage/datafab.c
> > --- bk-linus/drivers/usb/storage/datafab.c 2003-04-10 06:01:25.000000000 +0100
> > +++ linux-2.5/drivers/usb/storage/datafab.c 2003-03-17 23:42:38.000000000 +0000
> > @@ -670,7 +670,7 @@ int datafab_transport(Scsi_Cmnd * srb, s
> > srb->result = SUCCESS;
> > } else {
> > info->sense_key = UNIT_ATTENTION;
> > - srb->result = CHECK_CONDITION << 1;
> > + srb->result = CHECK_CONDITION;
> > }
> > return rc;
> > }
> > diff -urpN --exclude-from=/home/davej/.exclude bk-linus/drivers/usb/storage/jumpshot.c linux-2.5/drivers/usb/storage/jumpshot.c
> > --- bk-linus/drivers/usb/storage/jumpshot.c 2003-04-10 06:01:25.000000000 +0100
> > +++ linux-2.5/drivers/usb/storage/jumpshot.c 2003-03-17 23:42:38.000000000 +0000
> > @@ -611,7 +611,7 @@ int jumpshot_transport(Scsi_Cmnd * srb,
> > srb->result = SUCCESS;
> > } else {
> > info->sense_key = UNIT_ATTENTION;
> > - srb->result = CHECK_CONDITION << 1;
> > + srb->result = CHECK_CONDITION;
> > }
> > return rc;
> > }

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

Dudes! May the Open Source be with you. -- Eric S. Raymond User Friendly, 12/3/1998


- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Thu May 15 2003 - 22:00:55 EST