Re: SATA DMA problem (sata_uli)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Jeff Garzik wrote:
> Tejun Heo wrote:
>> Jeff Garzik wrote:
>>> Alan wrote:
>>>>> I tracked it down to one of the drives being forced into PIO4 mode
>>>>> rather than UDMA mode; dmesg bits:
>>>>> ata4.00: ATA-7, max UDMA/133, 586072368 sectors: LBA48 NCQ (depth
>>>>> 0/32)
>>>>> ata4.00: ata4: dev 0 multi count 16
>>>>> ata4.00: simplex DMA is claimed by other device, disabling DMA
>>>> Your ULi controller is reporting that it supports UDMA upon only one
>>>> channel at a time. The kernel is honouring this information. The older
>>>> ULi (was ALi) PATA devices report simplex but let you turn it off so
>>>> see if the following does the trick. Test carefully as always with
>>>> disk driver
>>>> changes.
>>>>
>>>> (Jeff probably best to check the docs before merging this but I believe
>>>> it is sane)
>>>>
>>>> Signed-off-by: Alan Cox <[email protected]>
>>> My Uli SATA docs do not appear to cover the bmdma registers :(  Only the
>>> PCI config registers.
>>>
>>> But regardless, I think the better fix is to never set ATA_HOST_SIMPLEX
>>> if ATA_FLAG_NO_LEGACY is set.
>>>
>>> None of the SATA controllers I've ever encountered has been simplex.
>>
>> Just another data point.  The same problem is reported by bug #7590.
>>
>> http://bugzilla.kernel.org/show_bug.cgi?id=7590
>>
>> Is somebody brewing a patch?
> 
> Not to my knowledge.  Did you just volunteer?  ;-)
> 
> /me runs...

I'm just gonna ack Alan's patch.

* ATA_FLAG_NO_LEGACY is not really used widely (and thus LLDs don't set
it rigorously).  I think it should be removed once we get initialization
model right.

* I'm really reluctant to add more LLD-specific knowledge into libata
core.  We're already carrying too much due to the current init model
(libata should initialize host according to probe_ent, so many
weirdities should be represented in probe_ent in a form libata core
understands).

* The idea of clearing simplex for unknown controllers scares the hell
out of me.  where's mummy...

So, I'll ask bug reporter of #7590 to test it.

-- 
tejun
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux