Re: [REGRESSION] mt7925: MLO connectivity silently stalls with 6GHz link active

Devin Wittmayer <[email protected]>
Newsgroups dev.linux.lists.regressions,org.kernel.vger.linux-wireless
Message-ID <[email protected]>
On 15/08/2026 07:51, Thorsten Leemhuis wrote:
> CCing Devin, who wrote two of the following messages

Those are the mt7921 regd deadlock. mt7925 does not have it, there is no
equivalent of the mt7921_mac_sta_add() call site that creates it.

Worth ruling in or out before you bisect. mt7925 sets
IEEE80211_MLD_CAP_OP_MAX_SIMUL_LINKS to 0 in mt7925/main.c. It is an N-1
field, mt7996 sets MT7996_MAX_RADIOS - 1, so 0 means one simultaneous link,
and mt7925/mcu.c then requests MT7925_ROC_REQ_MLSR_AG or _AA. MLSR is
multi-link single radio: your two links share one radio, and ROC is what
moves it between them.

If 5 GHz is your deflink, your pair is named on that path in
mt7925_mac_set_links():

	if (band == NL80211_BAND_2GHZ ||
	    (band == NL80211_BAND_5GHZ && secondary_band == NL80211_BAND_6GHZ)) {
		mt7925_abort_roc(...);
		mt7925_set_mlo_roc(...);
	}

That one only runs at association. The path that can run mid-session is
mt7925_change_vif_links(), which calls mt7925_set_mlo_roc() for each added
link. Both reach mt7925_mcu_set_mlo_roc(), and all of this is the same in
7.1 and 7.2-rc7.

Under your existing watchdog:

	cd /sys/kernel/debug/tracing
	echo 'r:mloroc mt7925_mcu_set_mlo_roc ret=$retval:s32' > kprobe_events
	echo 'r:rocabort mt7925_mcu_abort_roc ret=$retval:s32' >> kprobe_events
	echo 'p:rocwork mt7925_roc_work' >> kprobe_events
	echo 1 > events/kprobes/enable

Association will fire mloroc once, so anything later is a mid-session
switch. If the WFDMA0 tail freezes while one of those is in flight, it is a
link switch that did not finish. If they are silent across a stall, the
whole path is ruled out and that is worth as much.

On the bisect itself: your 6.18 good point is second-hand, from different
hardware and a different AP. Worth confirming on your own box before
spending steps against it.

Devin
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.