Hello Kalle, In the function 'ieee80211_master_start_xmit', ieee80211_stop_queues_by_reason is called and a ps_disable_work is queued where wake_queues is called. Can you please clarify me on why the queues are stopped and started. If at all that needs to be stopped, wouldn't ieee80211_dynamic_ps_enable_work be a better place to do it? The issue is while this ps_disable_work is queued, netif_subqueue_stopped() is checked in _ieee80211_tx which ultimately results in a WARN_ON(info->flags & IEEE80211_TX_CTL_AMPDU) in ieee80211_tx. Please see the code for clarification. So, while I try to ping after enabling power save, the packets are dropped due to this warning. The warning message is not at all related to the issue and hence I feel that this is an inappropriate place for that WARN_ON. The fix for the issue is to remove the stop/start queues if it is not really needed or the better fix is to remove this inappropriate warning message. Please clarify me if I'm wrong. Thanks for your time, Vivek. -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html