Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 23 Sep 2008 10:47:43 -0700
From:      Marcel Moolenaar <xcllnt@mac.com>
To:        Nathan Whitehorn <nwhitehorn@freebsd.org>
Cc:        freebsd-ppc@FreeBSD.org
Subject:   Re: Call for testers: Apple ATA DMA
Message-ID:  <0DD89065-9CF3-45E4-89A0-70D6BBB9621D@mac.com>
In-Reply-To: <48D84C12.7070207@freebsd.org>
References:  "b9c23c9f0809100322n1659cb36oa05acf2f13f3c7e1@mail.gmail.com" <48D389EE.9000207@FreeBSD.org> <48D3AD50.8070505@freebsd.org> <48D69679.1080701@freebsd.org> <48D7F437.1040603@FreeBSD.org> <645CD2B8-11A0-42E8-B5F9-C04DCF21F763@mac.com> <48D84C12.7070207@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help

On Sep 22, 2008, at 6:53 PM, Nathan Whitehorn wrote:

> Marcel Moolenaar wrote:
>> On Sep 22, 2008, at 12:38 PM, Maxim Sobolev wrote:
>>> Nathan Whitehorn wrote:
>>>> Nathan Whitehorn wrote:
>>>>> Maxim Sobolev wrote:
>>>>>> Nathan,
>>>>>>
>>>>>> Do you have any news regarding the patch in question? I hope  
>>>>>> you did not give up, the lack of ATA DMA support is IMHO  
>>>>>> probably the biggest issue for the FreeBSD on PowerMacs now.  
>>>>>> The hardware is very attractive for SOHO applications, so that  
>>>>>> having this feature is important.
>>>>> Right now, modes up to WDMA2 work. The UDMA modes cause hangs  
>>>>> for reasons not entirely clear. I'm investigating it, but am in  
>>>>> the Netherlands at the moment and it will have to wait until I  
>>>>> get back.
>>>> I now have UDMA modes working on my Shasta controller -- there  
>>>> was a stupid bug where I forgot to set the device to accept  
>>>> transfers in the selected mode. Please give this patch a test: I  
>>>> expect that UDMA modes now work everywhere.
>>>> http://people.freebsd.org/~nwhitehorn/apple-ata-dma.patch
>>>
>>> Nathan,
>>>
>>> The patch works here (G4 Mac Mini, 1.25GHz), however, I see some  
>>> weird things happening in the interrupt domain.
>> Interesting. My G4 Mac Mini 1.5Ghz is hanging hard:
>>    :
>> ad0: 76319MB <Seagate ST9808211A 3.07> at ata1-master UDMA100
>> acd0: DVDR <MATSHITACD-RW CW-8124/DACD> at ata1-slave UDMA33
>>    *hang*
>> Could be related...
>
> If it is, removing the USE_DBDMA_IRQ stuff in ata_macio.c should  
> solve it. This might solve Peter's problem too.

It improves things, but it's still not good:

	...
ad0: 76319MB <Seagate ST9808211A 3.07> at ata1-master UDMA100
acd0: DVDR <MATSHITACD-RW CW-8124/DACD> at ata1-slave UDMA33
WARNING: WITNESS option enabled, expect reduced performance.
	...
ad0: WARNING - SETFEATURES SET TRANSFER MODE taskqueue timeout -  
completing request directly
ad0: WARNING - SETFEATURES ENABLE RCACHE taskqueue timeout -  
completing request directly
ad0: WARNING - SETFEATURES ENABLE WCACHE taskqueue timeout -  
completing request directly
ad0: WARNING - SET_MULTI taskqueue timeout - completing request directly
acd0: WARNING - SETFEATURES SET TRANSFER MODE taskqueue timeout -  
completing request directly
acd0: TIMEOUT - READ_BIG retrying (1 retry left)
ad0: WARNING - SETFEATURES SET TRANSFER MODE taskqueue timeout -  
completing request directly
ad0: WARNING - SETFEATURES ENABLE RCACHE taskqueue timeout -  
completing request directly
ad0: WARNING - SETFEATURES ENABLE WCACHE taskqueue timeout -  
completing request directly
ad0: WARNING - SET_MULTI taskqueue timeout - completing request directly
acd0: WARNING - SETFEATURES SET TRANSFER MODE taskqueue timeout -  
completing request directly
acd0: TIMEOUT - READ_BIG retrying (0 retries left)
ad0: WARNING - SETFEATURES SET TRANSFER MODE taskqueue timeout -  
completing request directly
ad0: WARNING - SETFEATURES ENABLE RCACHE taskqueue timeout -  
completing request directly
ad0: WARNING - SETFEATURES ENABLE WCACHE taskqueue timeout -  
completing request directly
ad0: WARNING - SET_MULTI taskqueue timeout - completing request directly
acd0: WARNING - SETFEATURES SET TRANSFER MODE taskqueue timeout -  
completing request directly
acd0: FAILURE - READ_BIG timed out
	...
Memory modified after free ...
panic: Most recently used by none

KDB: enter: panic
db>

db> show intrcnt
irq63: ohci3 ohci+	29
irq39: ata1		108501120
irq40: fwohci0		2
db>

-- 
Marcel Moolenaar
xcllnt@mac.com






Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?0DD89065-9CF3-45E4-89A0-70D6BBB9621D>