Page MenuHomeFreeBSD

net80211: add watchdog routines
Needs ReviewPublic

Authored by avos on Oct 31 2015, 10:50 PM.
Tags
None
Referenced Files
F122500430: D4054.id9857.diff
Sat, Jul 5, 7:44 PM
Unknown Object (File)
Wed, Jul 2, 5:05 AM
Unknown Object (File)
Sat, Jun 21, 4:58 PM
Unknown Object (File)
Wed, Jun 18, 8:03 PM
Unknown Object (File)
Mon, Jun 16, 1:56 PM
Unknown Object (File)
Mon, Jun 16, 5:23 AM
Unknown Object (File)
Jun 3 2025, 8:51 PM
Unknown Object (File)
Jun 3 2025, 3:11 PM

Details

Reviewers
adrian
Summary

This implementation should replace driver-level watchdog implementations (and, as a result, reduce size of driver-specific code).

The watchdog can be enabled via
ic->ic_flags_ext |= IEEE80211_FEXT_WATCHDOG;
code line before calling ieee80211_ifattach();

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Skipped
Unit
Tests Skipped

Event Timeline

avos retitled this revision from to net80211: add watchdog routines.
avos updated this object.
avos edited the test plan for this revision. (Show Details)
avos added a reviewer: adrian.
avos set the repository for this revision to rS FreeBSD src repository - subversion.
  • Call ieee80211_tx_watchdog_refresh() before calling ic_transmit() / ic_raw_xmit(); that adds a possibility to call it from the callee error handler.
  • Update watchdog timer only when transmission occurs.
  • Add few more checks.

Fix race between ieee80211_tx_watchdog_stop() and ieee80211_tx_watchdog_refresh().

sys/net80211/ieee80211_freebsd.c
575–576

Hi,

I would like to ask few questions about this patch. As I see, tx_queued is incremented on transmission, but I don't see how it will be decremented in sunny day scenario. It's int16_t (max = 32768, then overflow)