diff options
| author | Masashi Honma <masashi.honma@gmail.com> | 2026-05-30 02:09:45 +0300 |
|---|---|---|
| committer | Johannes Berg <johannes.berg@intel.com> | 2026-06-03 15:07:06 +0300 |
| commit | 68511e16320b19387a8593c578a7ebe307c05166 (patch) | |
| tree | 0b5717cd16adccdc5e318683038e3f6e294f5cd6 /include/linux/debugobjects.h | |
| parent | a91c65cb99d1e03c8d8f0244258cbdd2d60faa86 (diff) | |
| download | linux-68511e16320b19387a8593c578a7ebe307c05166.tar.xz | |
wifi: mac80211: Use struct instead of macro for PERR frame
The existing PERR_IE_* macros access HWMP PERR frame fields via hardcoded
byte offsets. Each PERR destination entry contains an optional 6-byte AE
(Address Extension) address followed by a reason code, making offset-based
access error-prone.
Introduce typed packed C structs to represent the PERR frame layout:
- ieee80211_mesh_hwmp_perr: top-level frame containing TTL and
destination count
- ieee80211_mesh_hwmp_perr_dst: per-destination entry with optional AE
address and variable-position reason code
Add ieee80211_mesh_hwmp_perr_get_rcode() to locate the reason code in
each destination entry depending on whether the AE flag is set.
This refactoring makes the PERR processing code consistent with the
struct-based approach adopted for PREQ and PREP in preceding patches.
Signed-off-by: Masashi Honma <masashi.honma@gmail.com>
Link: https://patch.msgid.link/20260529230952.124754-3-masashi.honma@gmail.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'include/linux/debugobjects.h')
0 files changed, 0 insertions, 0 deletions
