All of lore.kernel.org
 help / color / mirror / Atom feed
From: Endrik Einberg <git@endrik.dev>
To: miriam.rachel.korenblit@intel.com
Cc: linux-wireless@vger.kernel.org, netdev@vger.kernel.org,
	linux-kernel@vger.kernel.org, Endrik Einberg <git@endrik.dev>
Subject: [PATCH v2] wifi: iwlwifi: mld: include VI packets in low latency detection
Date: Mon,  5 Oct 2026 17:42:25 +0300	[thread overview]
Message-ID: <20261005144225.170280-1-git@endrik.dev> (raw)

iwl_mld_is_vo_vi_pkt() checks whether the mapped access category
is less than IEEE80211_AC_VI.
Since mac80211 defines IEEE80211_AC_VO as 0 and IEEE80211_AC_VI as 1,
this only matches voice traffic and excludes video traffic.

This was discovered during Wi-Fi troubleshooting with LLM assistance,
then confirmed through runtime testing and manual code inspection.
Synthetic video-priority UDP traffic did not automatically
activate low-latency mode, whereas voice-priority traffic did
(observed through the iwlmld debugfs state).

Include IEEE80211_AC_VI as intended,
matching behaviour of iwlmvm's iwl_mvm_calc_tcm_stats().
Explicitly specify the two values to match,
avoiding such issues from enum value comparison in the future.

Fixes: d1e879ec600f ("wifi: iwlwifi: add iwlmld sub-driver")
Signed-off-by: Endrik Einberg <git@endrik.dev>
---
Changes in v2:
- Match IEEE80211_AC_VO and _VI explicitly, as suggested by Miri.
- Describe how the issue was discovered and confirmed.

 drivers/net/wireless/intel/iwlwifi/mld/low_latency.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/net/wireless/intel/iwlwifi/mld/low_latency.c b/drivers/net/wireless/intel/iwlwifi/mld/low_latency.c
index a4ddc32e2860..e7482623111c 100644
--- a/drivers/net/wireless/intel/iwlwifi/mld/low_latency.c
+++ b/drivers/net/wireless/intel/iwlwifi/mld/low_latency.c
@@ -257,7 +257,8 @@ static bool iwl_mld_is_vo_vi_pkt(struct ieee80211_hdr *hdr)
 	if (tid >= IWL_MAX_TID_COUNT)
 		return false;
 
-	return tid_to_mac80211_ac[tid] < IEEE80211_AC_VI;
+	return tid_to_mac80211_ac[tid] == IEEE80211_AC_VI ||
+	       tid_to_mac80211_ac[tid] == IEEE80211_AC_VO;
 }
 
 void iwl_mld_low_latency_update_counters(struct iwl_mld *mld,
-- 
2.53.0


                 reply	other threads:[~2026-10-05 14:42 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20261005144225.170280-1-git@endrik.dev \
    --to=git@endrik.dev \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-wireless@vger.kernel.org \
    --cc=miriam.rachel.korenblit@intel.com \
    --cc=netdev@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.