Re: [Bug 1412] Copy from USB1 CF/SM reader stalls, no actualcontent is read (only directory structure)

From: Nicolas Mailhot
Date: Fri Nov 07 2003 - 20:06:36 EST


Le ven 07/11/2003 à 10:09, Jens Axboe a écrit :
> On Fri, Nov 07 2003, Nicolas Mailhot wrote:
> > Le ven 07/11/2003 à 09:24, Jens Axboe a écrit :
> > > On Wed, Nov 05 2003, Alan Stern wrote:
> >
> > > > In any case, it quite likely _does_ point to a driver bug. But since
> > > > sddr09_read_data() was handed this sg entry and didn't change it, if there
> > > > is such a bug it must lie in a higher-level driver. Maybe the scsi layer,
> > > > maybe the block layer, maybe the memory-management system, maybe the file
> > > > system. That was my original point.
> > >
> > > Well, the sg entry looks perfectly valid. And that was my original
> > > point :-). And that is why I said it looks like a driver bug, not in
> > > upper layers. How much memory did the system that crashed have? If the
> > > system has highmem, try testing with scsi_calculate_bounce_limit()
> > > unconditionally returning BLK_BOUNCE_HIGH.
> >
> > The system has 1 GiB of memory, ie just enough to make stuff like
> > radeonfb fail
>
> Try with this debug patch then, does it work now?
>
> ===== drivers/scsi/scsi_lib.c 1.77 vs edited =====
> --- 1.77/drivers/scsi/scsi_lib.c Tue Oct 14 09:28:06 2003
> +++ edited/drivers/scsi/scsi_lib.c Fri Nov 7 10:08:52 2003
> @@ -1215,6 +1215,7 @@
>
> u64 scsi_calculate_bounce_limit(struct Scsi_Host *shost)
> {
> +#if 0
> struct device *host_dev;
>
> if (shost->unchecked_isa_dma)
> @@ -1229,6 +1230,9 @@
> * hardware have no practical limit.
> */
> return BLK_BOUNCE_ANY;
> +#else
> + return BLK_BOUNCE_HIGH;
> +#endif
> }
>
> struct request_queue *scsi_alloc_queue(struct scsi_device *sdev)

Will try this evening when I have physical access to the system. (It's
difficult to plug a USB device via ssh;)

Cheers,

--
Nicolas Mailhot

Attachment: signature.asc
Description: Ceci est une partie de message=?ISO-8859-1?Q?num=E9riquement?= =?ISO-8859-1?Q?_sign=E9e=2E?=