2002-11-05 05:10:22

by John W Fort

[permalink] [raw]
Subject: Patch-2.5.45-ac1 inia100 compile and run problems

Attn: Alan Cox

Thank you for your work on the inia100 SCSI card, it not so much an orphan, but a street
kid that everyone thinks they can molest.

Trivial bits from 2.5.45-ac1 compile:
drivers/scsi/inia100.h:78: warning: `inia100_detect' declared `static' but never defined
drivers/scsi/inia100.h:79: warning: `inia100_release' declared `static' but never defined
drivers/scsi/inia100.h:80: warning: `inia100_queue' declared `static' but never defined
drivers/scsi/inia100.h:81: warning: `inia100_abort' declared `static' but never defined
drivers/scsi/inia100.h:82: warning: `inia100_device_reset' declared `static' but never defined
drivers/scsi/inia100.h:83: warning: `inia100_bus_reset' declared `static' but never defined

I was working on the last three of those but the rug was pulled from under me by someone
with a grander vision.

Anyhow, I ran two parallel Bonnies on both spindles on the same host/bus and got this:

Incorrect number of segments after building list
counted 17, received 16
req nr_sec 256, cur_nr_sec 8
end request: I/O error, dev 08:10 sector 6685776

and then hangs the bus.
Would it be because there is no 'eh_host_reset_handler'?

The first run both drives reported similar I/O errors.
Works fine with 'patch-2.5.45' from Linus.
How can I help?

cu johnf


2002-11-05 10:33:12

by Alan

[permalink] [raw]
Subject: Re: Patch-2.5.45-ac1 inia100 compile and run problems

On Tue, 2002-11-05 at 05:16, John W Fort wrote:
> Trivial bits from 2.5.45-ac1 compile:
> drivers/scsi/inia100.h:78: warning: `inia100_detect' declared `static' but never defined
> drivers/scsi/inia100.h:79: warning: `inia100_release' declared `static' but never defined
> drivers/scsi/inia100.h:80: warning: `inia100_queue' declared `static' but never defined
> drivers/scsi/inia100.h:81: warning: `inia100_abort' declared `static' but never defined
> drivers/scsi/inia100.h:82: warning: `inia100_device_reset' declared `static' but never defined
> drivers/scsi/inia100.h:83: warning: `inia100_bus_reset' declared `static' but never defined
>

These should be little things because of the way the include is used

> Incorrect number of segments after building list
> counted 17, received 16
> req nr_sec 256, cur_nr_sec 8
> end request: I/O error, dev 08:10 sector 6685776
>
> and then hangs the bus.
> Would it be because there is no 'eh_host_reset_handler'?

No thats because something much nastier has occurred - you've got some
kind of block/scsi layer structure corruption. Most probably there is a
path where we called ->done(cmd) without holding the host lock

> The first run both drives reported similar I/O errors.
> Works fine with 'patch-2.5.45' from Linus.
> How can I help?

I'll go and review the changes. It looks like a locking error.