Thread (38 messages) 38 messages, 4 authors, 2018-09-13

Re: [PATCH RFC v3 0/4] Move TXQ scheduling into mac80211

From: Toke Høiland-Jørgensen <toke@toke.dk>
Date: 2018-09-10 16:11:26

Johannes Berg [off-list ref] writes:
On Sat, 2018-09-08 at 00:22 +0200, Toke H=C3=B8iland-J=C3=B8rgensen wrote:
quoted
=20
A few things that were discussed in the last round that I did *not* chan=
ge:
Thanks for this list btw.
quoted
- I did not add any locking around next_txq(); the driver is still suppo=
sed
quoted
  to maintain a lock that prevents two threads from trying to schedule t=
he
quoted
  same AC at the same time. This is what drivers already do, so I figure=
d it
quoted
  was easier to just keep it that way rather than do it in mac80211.
I'll look at this in the code, but from a maintainer perspective I'm
somewhat worried that this will lead to issues that are really the
driver's fault, but surface in mac80211. I don't know how easy it
would be to catch that.
Yeah, I get what you mean. The alternative would be to have a
ieee80211_start_schedule(ac) and ieee80211_end_schedule(ac), which
basically just takes a lock. Would mean we could get rid of the 'first'
parameter for next_txq(), so might not be such a bad idea; and if the
driver has its own locking the extra locking in mac80211 would just be
an always-uncontested spinlock, which shouldn't be much overhead, right?

-Toke
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help