wifi: mt76: mt7925: fix kernel warning in MLO ROC setup #1038
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.
During MLO AP setup,
mt7925_mcu_set_mlo_roc()can be called before alllinks have their channels configured. The existing code uses
WARN_ON_ONCE()to check for NULL link_conf and channel pointers, which triggers kernel
warnings/oops that appear as crashes even though it's just a timing issue.
This patch:
WARN_ON_ONCE()with regular NULL checks-ENOLINKto indicate the link isn't fully configuredThe
-ENOLINKreturn allows upper layers to retry when the link is ready,without spamming kernel logs with warnings.
Fixes: #1014 (kernel oops on MLO AP setup)
Related: This is part of a series fixing MLO stability issues in MT7925:
Testing: Addresses kernel oops reported on Radxa ROCK 5 ITX+ with OpenWrt.