On Sat, Feb 13, 2010 at 12:32 AM, Artyom Tarasenko
<atar4q...@googlemail.com> wrote:
> 2010/2/12 Blue Swirl <blauwir...@gmail.com>:
>> On Thu, Feb 11, 2010 at 12:40 AM, Artyom Tarasenko
>> <atar4q...@googlemail.com> wrote:
>>> Don't raise interrupt when not enabled.
>>> Don't set DMA_INTR bit spuriously.
>>> Don't print misleading debug messages "Raise IRQ" when not raising any.
>>
>> This breaks most of my Linux tests. *BSD are unaffected. For example
>> sparc-test 2.0:
>>
>> eth0: LANCE 52:54:00:12:34:56
>> esp0: IRQ 36 SCSI ID 7 Clk 40MHz CCYC=25000 CCF=8 TOut 167 NCR53C9XF(espfast)
>> ESP: Total of 1 ESP hosts found, 1 actually in use.
>> scsi0 : Sparc ESP100A-FAST
>> esp0: Aborting command
>> esp0: dumping state
>> esp0: dma -- cond_reg<a4400311> addr<f0010e64>
>> esp0: SW [sreg<11> sstep<04> ireg<18>]
>> esp0: HW reread [sreg<93> sstep<00> ireg<10>]
>> esp0: current command [tgt<02> lun<00> pphase<CLUELESS> cphase<DATAIN>]
>> esp0: disconnected
>> esp0: Aborting command
>> esp0: dumping state
>> esp0: dma -- cond_reg<a4400310> addr<f0010e64>
>> esp0: SW [sreg<11> sstep<04> ireg<18>]
>> esp0: HW reread [sreg<03> sstep<04> ireg<00>]
>> esp0: current command [tgt<02> lun<00> pphase<UNISSUED> cphase<UNISSUED>]
>> esp0: disconnected
>> esp0: Resetting scsi bus
>> esp0: SCSI bus reset interrupt
>> esp0: Aborting command
>> esp0: dumping state
>> esp0: dma -- cond_reg<a4400211> addr<f000d007>
>> esp0: SW [sreg<03> sstep<04> ireg<80>]
>> esp0: HW reread [sreg<91> sstep<04> ireg<18>]
>> esp0: current command [tgt<02> lun<00> pphase<UNISSUED> cphase<UNISSUED>]
>> esp0: disconnected
>> scsi: Device offlined - not ready after error recovery: host 0 channel
>> 0 id 2 lun 0
>>
>> Since Open/NetBSD still works, there may be yet again another bug that
>> your patch uncovers.
>
> Looks like Linux has problems with the fist part of the patch: not
> raising irqs when they are not enabled.
> The part is actually not relevant for Solaris, so we could just skip
> it. But it would be nicer to find this another bug.
> It seems that there is some asymmetry: Solaris complained about
> spurious interrupts only on write operations.
> Do you have an idea why setting the DMA_INTR bit and raising the irq
> was split between multiple functions?

I'd suspect my sloppiness. ;-)


Reply via email to