On 2018-08-21 05:24, Toke Høiland-Jørgensen wrote:
Rajkumar Manoharan <rmanohar@xxxxxxxxxxxxxx> writes:
This allows the driver to refill airtime fairness deficit
where the driver will not access txqs by ieee80211_next_txq.
In tx push mode data path, high priority txqs will be scheduled
for data transmission by ieee80211_next_txq and driver will not
prioritize txqs whereas in push-pull mode, the drivers can
prioritize txqs and access them directly. In such mode, airtime
deficit can not filled by ieee80211_next_txq.
[...]
This needs to check that the txq is currently at the head of
local->active_txqs[txqi->txq.ac]; otherwise fairness enforcement
doesn't
work. And with this check I'm not sure the reorder function is terribly
useful for what you want to use it for?
Hmm.. I tried to keep the same policy of next_txq(). i.e do not allow
serving
txqs when the deficit is negative. reorder_txq() limits over serving the
same
txq by driver. So that driver is given chance to serve other txqs.
As mentioned earlier, next_txq() can not be used for fetching txq
directly.
So reorder_txq() needs to take care of refilling txq after serving them.
-Rajkumar