[PATCH] Re allocate the RX DMA buffer to avoid skb conflict Handle all RX packets in the DMA ring buffer
Eugene Krasnikov
k.eugene.e at gmail.com
Tue May 28 02:18:47 EDT 2013
> + /* TX_LOW_PRI */
> + if (int_src & WCN36XX_DXE_INT_CH0_MASK) {
> + wcn36xx_dxe_read_register(wcn, WCN36XX_DXE_0_CH0_STATUS,
> + &int_reason);
> + }
Why do we need to check if the reason for RX interrupt is TX_LOW_PRIO?
I thought RX interrupt is only for RX packets and not for TX?
2013/5/28 Eugene Krasnikov <k.eugene.e at gmail.com>:
>> The GFP_ATOMIC is need cause normally the rx skb reallocation is be
>> done on interrupt context, although currently it is
>> implemented on the work queue but is not very correctly, both the
>> interrupt register and skb unmap/refill should be implemented
>> in the interrupt context as quickly as possible to avoid the hardware
>> DMA engine reuse the skb or stuck due to some register no be cleared.
>> I'll submit another patch to move them to interrupt context instead of
>> in bottom half.
>>
>
> You can move the code to wcn36xx_irq_rx_ready.
>
> This patch is number one for me today so please send updated version
> so we can review it and get it merged today;) But we must be careful
> with DXE part because issues there are really hard to track.
>
> --
> Best regards,
> Eugene
--
Best regards,
Eugene
More information about the wcn36xx
mailing list