linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* question for mac80211 driver maintainers - RCU usage in drivers
@ 2013-12-04 21:30 Johannes Berg
  2013-12-04 22:16 ` Christian Lamparter
  2013-12-05 12:35 ` [PATCH 0/8] mac80211: speed up station cleanup/AP shutdown Johannes Berg
  0 siblings, 2 replies; 17+ messages in thread
From: Johannes Berg @ 2013-12-04 21:30 UTC (permalink / raw)
  To: linux-wireless

Hi all,

Except for iwlmvm, I don't find much RCU usage wrt. stations in drivers.

Is there any other driver that assumes it is safe to delete a station
pointer in the sta_state callback and not use synchronize_rcu()? From
looking at the code, I don't see any, but I can't really be sure that
everyone uses __rcu annotations correctly ... :)

Would anyone object if we changed mac80211 to *immediately* free the
station after calling the driver's sta_state (or sta_remove) callback?
We currently delay this until after an RCU grace period, but that way we
end up having a lot of delay in station freeing ... We'd like to
optimise that.

johannes

PS: I'll probably have to add another callback "sta going away before
RCU" so you can invalidate pointers there ... otherwise I'd have to
synchronize_rcu() in iwlmvm which would kinda defeat the purpose.


^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2013-12-16 10:30 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-12-04 21:30 question for mac80211 driver maintainers - RCU usage in drivers Johannes Berg
2013-12-04 22:16 ` Christian Lamparter
2013-12-04 22:23   ` Johannes Berg
2013-12-04 22:47     ` Christian Lamparter
2013-12-04 22:51       ` Johannes Berg
2013-12-05 12:35 ` [PATCH 0/8] mac80211: speed up station cleanup/AP shutdown Johannes Berg
2013-12-05 12:35   ` [PATCH 1/8] mac80211: add pre-RCU-sync sta removal driver operation Johannes Berg
2013-12-05 12:35   ` [PATCH 2/8] iwlwifi: mvm: use pre-RCU-sync sta removal operation Johannes Berg
2013-12-05 12:35   ` [PATCH 3/8] mac80211: move 4-addr sta pointer clearing before synchronize_rcu() Johannes Berg
2013-12-05 12:35   ` [PATCH 4/8] mac80211: don't delay station destruction Johannes Berg
2013-12-05 12:35   ` [PATCH 5/8] mac80211: move synchronize_net() before sta key removal Johannes Berg
2013-12-05 12:35   ` [PATCH 6/8] mac80211: optimise synchronize_net() for sta_info_flush Johannes Berg
2013-12-05 12:35   ` [PATCH 7/8] mac80211: optimise mixed AP/VLAN station removal Johannes Berg
2013-12-05 12:35   ` [PATCH 8/8] mac80211: free all AP/VLAN keys at once Johannes Berg
2013-12-05 17:02   ` [PATCH 0/8] mac80211: speed up station cleanup/AP shutdown Christian Lamparter
2013-12-05 17:27     ` Johannes Berg
2013-12-16 10:30   ` Johannes Berg

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).