"Firmware timed out" with qlogic 2312 FC cards
Leo Prasath Arulraj
leo at nec-labs.com
Wed Jul 14 01:46:48 UTC 2010
I did that and made sure kldstat displays isp_2300 after boot.
But the error still persists.
I also see spurious interrrupts from the device. But not sure if they
signal something wrong:
"kernel: isp0: bogus intr- isr 8013 (8013) iptr 276 optr 276"
Aside, I am trying to use a code "Memulator" (
http://www.ece.cmu.edu/~griffin2/ ) which was developed on FreeBSD 5.2
with Adaptec 21960 scsi card. This tool emulates a scsi disk ( much like
/usr/share/examples/scsi_target ).
Can someone recommend a SCSI card that is on market today which is most
likely to work on the FreeBSD 9.0 in target mode ? This will be very
helpful.
Thanks,
Leo.
On 07/13/2010 05:25 PM, Matthew Jacob wrote:
> On 7/13/2010 1:07 PM, Leo Prasath Arulraj wrote:
>> I am running scsi target mode disk emulation code on a QLogic 2312
>> FC card. My OS version is : 9.0-CURRENT FreeBSD . This FreeBSD
>> machine acts as the target while a separate Linux machine acts as the
>> initiator accessing the FreeBSD machine as target.
>
> make sure
>
> isp_2300_load=YES
>
> is in your loader.conf
>
>>
>> I am seeing "Firmware timed out" errors on the FreeBSD side :
>>
>>
>> isp0: isp_action code 933
>> (targ0:isp0:0:0:0): isp_target_start_ctio: CTIO2[207c] flags 40
>> xfrlen 0 offset 4096
>> isp0: RISC2HOST ISR 0x2f08013
>> isp0: Firmware timed out on command
>> isp0: data CTIO complete
>> isp0: isp_handle_platform_ctio: CTIO2[2034] sts 0xb flg 0x840 sns 0
>> resid 0 MID
>> isp0: MIDTERM CTIO[0x2034] done
>>
>>
>> And I see UNDERRUN errors on the Linux side :
>>
>> [ 1661.998946] sd 0:0:0:0: [sdb] Unhandled error code
>> [ 1661.998955] sd 0:0:0:0: [sdb] Result: hostbyte=DID_OK
>> driverbyte=DRIVER_TIMEOUT
>> [ 1661.998973] sd 0:0:0:0: [sdb] CDB: Read(10): 28 00 00 00 00 00 00
>> 00 08 00
>> [ 1661.999024] end_request: I/O error, dev sdb, sector 0
>> [ 1662.219095] comp_status 21 scsi_status 0
>> [ 1662.219118] scsi(0:0:0) UNDERRUN status detected 0x15-0x0.
>> resid=0xda fw_resid=0x0 cdb=0x12 os_underflow=0x0
>> [ 1662.219137] scsi(0:0:0:0) Dropped frame(s) detected (da of fe
>> bytes)...firmware reported underrun...retrying command.
>>
>>
>> I changed the ct_timeout field of a CTIO in the isp_freebsd.c file to
>> 120 from 10:
>>
>> isp_freebsd.c:1624: cto->ct_timeout = 120; // was 10
>> isp_freebsd.c:1658: cto->ct_timeout = 120 ; // was 10
>>
>> Is there someway I can fix this ? Or should I handle it the userspace
>> program by retrying commands. I suspect something goes wrong with the
>> firmware because , after this error happens, subsequents requests
>> also fail.
>>
>> Should I update the firmware assembly file isp_2300.h ? Where should
>> I get the assembly version of the firmware from ?
>>
>> Any help is appreciated.
>>
>> Thanks,
>> Leo.
>>
>>
>>
>>
>
More information about the freebsd-scsi
mailing list