Re: Patch RFC: Promise SATA300 TX4 hardware bug workaround.

From: Alexander Sabourenkov <screwdriver_at_lxnt.info>
Date: Fri, 02 Nov 2007 13:57:57 +0300
Søren Schmidt wrote:
> Søren Schmidt wrote:
>> Good catch!
>>
>> However from my quick glimpse at the Promise sources the limit seems 
>> to be 32 Dwords ie 32*4 = 128bytes.

Please see driver named 4_sataii150-300_linux2.6-src_x86-64_v1.01.0.23

>> I'll investigate further and ask Promise for the gory details, stay 
>> tuned...
>> I dont think the PRD count limitation is a real problem, I've newer 
>> seen that long a list and IIRC we newer do more than 64K transfers in 
>> one go (yet).

In (current) practice, yes, but check should be there even if only to 
document the limit.

>> Anyhow I need to get checks in for that not just here...
>>
>> Give me a few days and I'll get this figured out for 7-rel...
> Oh, and I forgot, do you have a surefire way to reproduce the problem so 
> the fix can be tested ?

dd if=/dev/ad8 of=/dev/null bs=1048576 count=1000 works every time.

I have tested it on my home machine:

without the patch first timeouts and errors appear about 10 seconds into 
the read.

with the patch a read of entire disk (320G) completed without errors.

Previous tests of analogous linux driver fix shown no errors and no data 
corruption on two write-whole-drive, read-whole-drive cycles.

> 
> I've newer been able to trigger this problem myself so far.
> 

Seems like the bug is highly configuration-dependent, or 
pci-chiset-depended, or just present in some production runs and not other.

-- 

./lxnt
Received on Fri Nov 02 2007 - 09:57:53 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:20 UTC