Subject: Re: [PATCH] sky2: receive dma mapping error handling

From: Michael Breuer <[email-masked]>
Date: Sun, 31 Jan 2010 16:58:42 -0500

On 1/31/2010 1:50 PM, Michael Breuer wrote:
> On 1/30/2010 11:55 PM, Michael Breuer wrote:
>> On 01/30/2010 07:34 PM, Jarek Poplawski wrote:
>>>
>>> Could you try the patch below to show maybe some other users of
>>> dma-debug entries?
>>>
>>> Jarek P.
>>> ---
>>>
>> With the default # entries & dma_debug_driver=sky2:
>>
>> 6:00 is eth0 & 4:00 is eth1.
>>
>> Jan 30 23:53:14 mail kernel: DMA-API: 0000:06:00.0: entries: 31961
>> ...
>>
> I put a printk as a third else case in sky2_tx_unmap. Looks like the 
> issue is that a large number (perhaps all) calls to sky2_tx_unmap have 
> re->flags set to neither TX_MAP_SINGLE or TX_MAP_PAGE. Thus the 
> elements are never being unmapped.
>
> I suspect that the system collapses when using DMAR sooner than if not 
> using DMAR. Probably some hardware limitation on the number of mapped 
> elements that is less than the software limitation. I don't see at 
> present how a ring element can ever get to this code without re->flags 
> being set to one or the other.
>
>
Put some more debugging code in... re->flags is always NULL upon entry 
to sky2_tx_unmap.