Page MenuHomeFreeBSD

net80211: remove ieee80211_unref_node()
ClosedPublic

Authored by bz on Oct 2 2023, 2:33 PM.
Tags
None
Referenced Files
Unknown Object (File)
Sat, Oct 19, 7:32 PM
Unknown Object (File)
Sep 20 2024, 12:23 PM
Unknown Object (File)
Sep 20 2024, 10:34 AM
Unknown Object (File)
Sep 19 2024, 10:23 PM
Unknown Object (File)
Sep 18 2024, 7:07 PM
Unknown Object (File)
Sep 18 2024, 12:13 AM
Unknown Object (File)
Sep 17 2024, 11:40 AM
Unknown Object (File)
Sep 16 2024, 8:22 PM

Details

Summary

ieee80211_unref_node() was only used in two error cases in
ieee80211_send_nulldata(). There we do not need to guard against
ni pointer reuse after decrementing the refcount of the ni as we
only update the stats and return.

Update the man page and remove the link for the now gone function.

Sponsored by: The FreeBSD Foundation
X-MFC: never

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 53779
Build 50670: arc lint + arc unit

Event Timeline

bz requested review of this revision.Oct 2 2023, 2:33 PM
adrian added a subscriber: adrian.

Oh I remember some stupid corner cases waaaay back that needed this for stupid reasons? because some (temp) nodes only had one reference at that point that shouldn't? or something with the bssnode handling continuing to be stupid?

I'm fine with this, just keep an eye out for weird panics on AP VAPs after this.

This revision is now accepted and ready to land.Oct 2 2023, 3:05 PM

Oh I remember some stupid corner cases waaaay back that needed this for stupid reasons? because some (temp) nodes only had one reference at that point that shouldn't? or something with the bssnode handling continuing to be stupid?

I'm fine with this, just keep an eye out for weird panics on AP VAPs after this.

Ifyou look at the two callers they do: deref; update stats in vap; return; at that point the caller has no idea that the local *ni was blanked out, so there is no difference with this. Unless your AP VAP problems were solved already, they are not in this code base.

Correct reviewers, docs is docs, and man is man