Search Linux Wireless

Re: [PATCH] mac80211: Ensure vif queues are operational after start

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 15.09.22 22:39, Ben Greear wrote:

From reading the original patch description, it was to stop an NPE when AP was stopped.  I have been testing this patch below and it fixes the problems I saw with multiple vdevs.  I was worried that the code in the 'list_for_each_entry_rcu(sta, &local->sta_list, list) {' might still need to run to keep everything in sync (and my patch allows that to happen), but I do not know if that is true or not.


I'm not sure if it's still save to wake the queues for the vif we are tearing down and assumed the intend was to skip those, too.

But it looks like all stations for the vif are deleted prior to setting sdata->bss = NULL, so the outcome should be the same.

Your solution removes potentially set IEEE80211_TXQ_STOP_NETIF_TX flags, reducing the risk that a queue restart during vif setup ends up with inoperable queues. But the only way to set IEEE80211_TXQ_STOP_NETIF_TX seems to be during ieee80211_tx_dequeue(). Which should not be possible to be called as long as SDATA_STATE_RUNNING was never set for the vif.

But I'm on thin ice here:-)

Alexander



[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Wireless Regulations]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux