From nobody Mon Jun 29 06:34:18 2026 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4gpc233zjsz6k5BQ for ; Mon, 29 Jun 2026 06:34:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "YR1" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4gpc230pZVz4GhG for ; Mon, 29 Jun 2026 06:34:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1782714859; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=rH6hUDGANzj0ZM/1o1KfbNqPlBzJOGv8pFCCOdm7boM=; b=YOxzqW4xZXBcq3eI44zghIBGuu7DvsUDd5BbfIMuH/c9NnmN/0G8h+EN9RD39QGxMdSSxQ jc+M6gGjSgmoYbuQZvV4KkvlK6Xg+kJAMM4AnZXB7JWvPPU8ThiRVhLc5B6897qNqqIJOg lL5lihmlWLRjdZFbW8pCpjLvmxPiEaxotxN2MHfu04+ps18HD8RqgTvvOieYGM25YbcUNE wS4el0OVr22LU3b3X1tY10LbJHZ96TtHVWJZHUaytz6MN/+xU36JiPzgdZEo5BZ1ZNu0Kl 3UBd7QVh1AXPmqKW59I6xP69607tdknf+SaxIMgGtroqvV1L41N8Ze00LLUsYw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1782714859; a=rsa-sha256; cv=none; b=cymoMWpUj5A4gak1wLLD51NwuaaMPqb4q3hMexjgj+pr7pXjD4tgFhn4QNBMaIMkCAcpIk jwPk0ixpdOKBlqNCC/CCnU73qpFsJ9m4xTfX70gqpLPV+oQZYAq6KL/ODEUwIS/wnS5Smy WIJRlls5ZFUEaGP1o7fOygYL1sDImOy9F8OsgE2gjL91XfKgESIgTBOt066LwibQe5xDm0 omqwKuQergUOMffCAukL+sBOvQF8gYG3AVHOQDvgfxFye1yAj0brykigwYpi+dXRBTwVHZ y+t/mVXNf5cPgJLU6Y+pX6xKMZlngiGsbwzcgzGrjocKT2nWg0APZ/n/k0jeng== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1782714859; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=rH6hUDGANzj0ZM/1o1KfbNqPlBzJOGv8pFCCOdm7boM=; b=UJrFvFTNwicfFkrILznYfdU6WpHr+esUNnmo8Uug+PNN4+k042rTig9jQUqnS4VkYdqAVI TpN4nEDjvQJxuG/jOo1k36Ev906buCZjIhUk066SxrbYtXTN+ysM4GV152ILHCV5xHgUkK dVbJxroHkYbO87uvFUIrVUQkPlqhO3vtP0iSCgvsiCraNtyHbwTylWcqgBWEEaiBf3DTx3 o93tO4RlO7xgfP1gi7lmiFjpbBqf70GCNf+x6cp6cRNwFy3VFTJfC8z7dBi5K5Mdw9B6ms Vdn2p+pHNcgM3d/PZj5J7VABzKlmF9FTTi8JBWZgc08P63j58dKQDnR3sp3i0Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4gpc226HmczmRd for ; Mon, 29 Jun 2026 06:34:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 4699a by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 29 Jun 2026 06:34:18 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Bjoern A. Zeeb Subject: git: c35adba00f29 - stable/15 - LinuxKPI: 802.11: add print masks for tx status flags List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org List-Id: List-Post: List-Help: List-Subscribe: List-Unsubscribe: List-Owner: Precedence: list MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: c35adba00f2923fe1e147b53f6e2be8118426ce2 Auto-Submitted: auto-generated Date: Mon, 29 Jun 2026 06:34:18 +0000 Message-Id: <6a4211ea.4699a.7a801eb3@gitrepo.freebsd.org> The branch stable/15 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=c35adba00f2923fe1e147b53f6e2be8118426ce2 commit c35adba00f2923fe1e147b53f6e2be8118426ce2 Author: Bjoern A. Zeeb AuthorDate: 2026-06-10 11:50:03 +0000 Commit: Bjoern A. Zeeb CommitDate: 2026-06-29 03:52:18 +0000 LinuxKPI: 802.11: add print masks for tx status flags Add print masks for tx status flags and use them in the TX tracing in order to more easily debug TX problems. As a result it was easier to determine that some dirver like the mt7921 (or mt76) do not always zero the status bits of the tx status information (it is a union with the control bits passed on TX) and thus we get bogus values back (rather than having flags in a different place than we thought). Sponsored by: The FreeBSD Foundation (cherry picked from commit 0cb3b9229876a2a83d217779cf5ecd09eb153fc3) --- sys/compat/linuxkpi/common/include/linux/ieee80211.h | 11 +++++++++++ sys/compat/linuxkpi/common/src/linux_80211.c | 8 ++++---- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/linux/ieee80211.h b/sys/compat/linuxkpi/common/include/linux/ieee80211.h index b8f29560f200..dede010c57de 100644 --- a/sys/compat/linuxkpi/common/include/linux/ieee80211.h +++ b/sys/compat/linuxkpi/common/include/linux/ieee80211.h @@ -466,9 +466,20 @@ enum ieee80211_tx_info_flags { IEEE80211_TX_CTL_STBC = BIT(20), } __packed; +#define IEEE80211_TX_INFO_FLAGS \ + "\010\1CTL_AMPDU\2CTL_ASSIGN_SEQ\3CTL_NO_ACK\4CTL_SEND_AFTER_DTIM" \ + "\5CTL_TX_OFFCHAN\6CTL_REQ_TX_STATUS" \ + "\7STATUS_EOSP\10STAT_ACK\11STAT_AMPDU\12STAT_AMPDU_NO_BACK" \ + "\13STAT_TX_FILTERED\14STAT_NOACK_TRANSMITTED" \ + "\15CTL_FIRST_FRAGMENT\16INTFL_DONT_ENCRYPT\17CTL_NO_CCK_RATE" \ + "\20CTL_INJECTED\21CTL_HW_80211_ENCAP\22CTL_USE_MINRATE" \ + "\23CTL_RATE_CTRL_PROBE\24CTL_LDPC\25CTL_STBC" + enum ieee80211_tx_status_flags { IEEE80211_TX_STATUS_ACK_SIGNAL_VALID = BIT(0), }; +#define IEEE80211_TX_STATUS_FLAGS \ + "\010\1ACK_SIGNAL_VALID" enum ieee80211_tx_control_flags { /* XXX TODO .. right shift numbers */ diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index 81823e225627..9dda56c77238 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -8798,13 +8798,13 @@ linuxkpi_ieee80211_tx_status_ext(struct ieee80211_hw *hw, #ifdef LINUXKPI_DEBUG_80211 if (linuxkpi_debug_80211 & D80211_TRACE_TX) - printf("TX-STATUS: %s: hw %p skb %p status %d : flags %#x " + printf("TX-STATUS: %s: hw %p skb %p status %d : flags %b " "band %u hw_queue %u tx_time_est %d : " "rates [ %u %u %#x, %u %u %#x, %u %u %#x, %u %u %#x ] " "ack_signal %u ampdu_ack_len %u ampdu_len %u antenna %u " - "tx_time %u flags %#x " + "tx_time %u flags %b " "status_driver_data [ %p %p ]\n", - __func__, hw, skb, status, info->flags, + __func__, hw, skb, status, info->flags, IEEE80211_TX_INFO_FLAGS, info->band, info->hw_queue, info->tx_time_est, info->status.rates[0].idx, info->status.rates[0].count, info->status.rates[0].flags, @@ -8816,7 +8816,7 @@ linuxkpi_ieee80211_tx_status_ext(struct ieee80211_hw *hw, info->status.rates[3].flags, info->status.ack_signal, info->status.ampdu_ack_len, info->status.ampdu_len, info->status.antenna, - info->status.tx_time, info->status.flags, + info->status.tx_time, info->status.flags, IEEE80211_TX_STATUS_FLAGS, info->status.status_driver_data[0], info->status.status_driver_data[1]); #endif