Hi Marek,

>> I tried to capture logs but when enable DYNAMIC_DEBUG I cannot
>> reproduce issue (running test > 30 minutes without allocation
>> failure).

Thanks for the testing. Yes. Sometimes timing issues won't get reproduced with 
debug messages enabled.

>Any update on this? Should I provide some other logs?

What's the size of Rx data packets? Is the Rx data AMSDU aggregated?(You can 
check if "if (rx_pkt_type == PKT_TYPE_AMSDU)" check is passed in mwifiex code) 
If so, disable AMSDU option in AP and try to reproduce the issue. 

As you suspected earlier, we might have missed to free skbs allocated for Rx 
data which leads to SKB allocation failure. There is very less probability for 
this. But we can try below experiment.  

1) I observed that debug variable "adapter->rx_pending" doesn;t get decremented 
when packet is submitted to kernel. Add below code change(valid only for AMSDU 
disabled case. Because multiple packets are submitted to kernel when AMSDU is 
enabled)

----------
--- a/drivers/net/wireless/mwifiex/util.c
+++ b/drivers/net/wireless/mwifiex/util.c
@@ -218,6 +218,7 @@ int mwifiex_recv_packet(struct mwifiex_private *priv, 
struct sk_buff *skb)
 
        priv->stats.rx_bytes += skb->len;
        priv->stats.rx_packets++;
+       atomic_dec(&priv->adapter->rx_pending);
        if (in_interrupt())
                netif_rx(skb);
----------

2) Add BUG_ON when first time SKB allocation is failed and print "rx_pending". 
If it's a huge number, we have missed freeing allocated SKB.

3) Also, get rx_pending info when Rx traffic works fine with 40M bandwidth 
option.

Btw, could you move to the firmware image (14.68.29.p38)
shared recently?

By any means(redirecting the log to serial console etc.), could you please 
capture and share kernel trace logs when system becomes unresponsive. It may 
give some clue and help us debug further.

Best Regards,
Amit--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to