Shawn Houston wrote:
>
> Douglas Gilbert wrote:
> >
>> [snip]
> >
> > Shawn,
> > If you suspect sg you can go to:
> > http:/www.torque.net/sg
> > and regress that driver from sg version 2.1.37 (as
> > found in lk 2.2.16) to 2.1.36. See the table on that
> > page for a tarball.
> >
> > Doug Gilbert
>
> Doug,
>
> I downgraded the latest kernel, 2.2.16 with errata patch, to sg 2.1.36,
> the problem went away.
>
> I did notice that building the SCSI system is partialy broken: you can
> go ALL modular, or no modules. If you mix you get undefined symbols
> errors.
>
> I build my kernel all modules except the very basics, ext2, etc.
>
> If I can help pinpoint the trouble, let me know.
Shawn,
I was afraid something like this might happen. A change was
put into sg 2.1.37 (first seen in 2.2.16-pre5) to stop oopses
coming out of this code in the aha1542 driver:
if(sgpnt[i].length == 0 || SCpnt->use_sg > 16 ||
(((int)sgpnt[i].address) & 1) || (sgpnt[i].length & 1)) {
.......
panic("Foooooooood fight!");
}
So that driver doesn't like scatter gather lists elements that
have any of these attributes:
1) zero length
2) list has more than 16 elements
3) have an odd address
4) have an odd length
and it shows its displeasure by crashing the machine (which
often looks like a lock up when X is being run).
1) and 4) were causing reported oopses. Point 1) was easy to
fix but the "solution" to 4) was to round up to the next 512
byte boundary (which is what the original sg driver did in
similar circumstances). Now I suspect that latter change is
what is causing the sym416 driver to misbehave. To test
this theory could you comment out line 1378 of sg 2.1.37
(i.e. the sg driver that came with lk 2.2.16). The line in
question looks like this:
size = (size + SG_SECTOR_MSK) & (~SG_SECTOR_MSK);
Please inform me how that goes.
BTW These problems have been lurking for some time. The recent
SANE 1.0.2 set the default buffer size to 128 KBytes (it was
previously 32 KB). This larger buffer size has the side effect of
causing sg to use scatter gather lists where it previously
had not.
Doug Gilbert
-
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to [EMAIL PROTECTED]