wifi: mt76: mt7925: add NULL checks in MLO link and chanctx functions #1032
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR adds NULL pointer checks in MLO link selection and channel context functions.
Problem
Several functions in the MT7925 driver call
mt792x_vif_to_link()andmt792x_vif_to_bss_conf()without checking for NULL return values beforedereferencing. This can cause kernel panics during rapid MLO state transitions.
Functions Fixed
mt7925_mac_set_links(): Check both primary and secondarylink_confbefore dereferencing
chanreq.operfor band selectionmt7925_link_info_changed(): Checkmconfbefore using it to getlink_conf, prevents NULL dereference chainmt7925_assign_vif_chanctx(): Checkmconfbefore use, return -EINVALif NULL; check
pri_link_confbefore passing to MCU functionmt7925_unassign_vif_chanctx(): Checkmconfbefore dereferencing,return early if NULL during MLO cleanup
Testing
Tested on Framework Desktop (AMD Ryzen AI Max 300 Series) with MT7925 WiFi.
Related PRs