patches.lists.linux.dev archive mirror
 help / color / mirror / Atom feed
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: stable@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	patches@lists.linux.dev, Steffen Moser <lists@steffen-moser.de>,
	Rameshkumar Sundaram <rameshkumar.sundaram@oss.qualcomm.com>,
	Nicolas Escande <nico.escande@gmail.com>,
	Vasanthakumar Thiagarajan
	<vasanthakumar.thiagarajan@oss.qualcomm.com>,
	Jeff Johnson <jeff.johnson@oss.qualcomm.com>,
	Sasha Levin <sashal@kernel.org>
Subject: [PATCH 6.12 060/175] wifi: ath11k: fix group data packet drops during rekey
Date: Sun,  7 Sep 2025 21:57:35 +0200	[thread overview]
Message-ID: <20250907195616.257010268@linuxfoundation.org> (raw)
In-Reply-To: <20250907195614.892725141@linuxfoundation.org>

6.12-stable review patch.  If anyone has any objections, please let me know.

------------------

From: Rameshkumar Sundaram <rameshkumar.sundaram@oss.qualcomm.com>

[ Upstream commit 97acb0259cc9cbfbd7ab689e25684f3d8ce10e26 ]

During GTK rekey, mac80211 issues a clear key (if the old key exists)
followed by an install key operation in the same context. This causes
ath11k to send two WMI commands in quick succession: one to clear the
old key and another to install the new key in the same slot.

Under certain conditions—especially under high load or time sensitive
scenarios, firmware may process these commands asynchronously in a way
that firmware assumes the key is cleared whereas hardware has a valid key.
This inconsistency between hardware and firmware leads to group addressed
packet drops. Only setting the same key again can restore a valid key in
firmware and allow packets to be transmitted.

This issue remained latent because the host's clear key commands were
not effective in firmware until commit 436a4e886598 ("ath11k: clear the
keys properly via DISABLE_KEY"). That commit enabled the host to
explicitly clear group keys, which inadvertently exposed the race.

To mitigate this, restrict group key clearing across all modes (AP, STA,
MESH). During rekey, the new key can simply be set on top of the previous
one, avoiding the need for a clear followed by a set.

However, in AP mode specifically, permit group key clearing when no
stations are associated. This exception supports transitions from secure
modes (e.g., WPA2/WPA3) to open mode, during which all associated peers
are removed and the group key is cleared as part of the transition.

Add a per-BSS station counter to track the presence of stations during
set key operations. Also add a reset_group_keys flag to track the key
re-installation state and avoid repeated installation of the same key
when the number of connected stations transitions to non-zero within a
rekey period.

Additionally, for AP and Mesh modes, when the first station associates,
reinstall the same group key that was last set. This ensures that the
firmware recovers from any race that may have occurred during a previous
key clear when no stations were associated.

This change ensures that key clearing is permitted only when no clients
are connected, avoiding packet loss while enabling dynamic security mode
transitions.

Tested-on: QCN9074 hw1.0 PCI WLAN.HK.2.9.0.1-02146-QCAHKSWPL_SILICONZ-1
Tested-on: WCN6855 hw2.1 PCI WLAN.HSP.1.1-03125-QCAHSPSWPL_V1_V2_SILICONZ_LITE-3.6510.41

Reported-by: Steffen Moser <lists@steffen-moser.de>
Closes: https://lore.kernel.org/linux-wireless/c6366409-9928-4dd7-bf7b-ba7fcf20eabf@steffen-moser.de
Fixes: 436a4e886598 ("ath11k: clear the keys properly via DISABLE_KEY")
Signed-off-by: Rameshkumar Sundaram <rameshkumar.sundaram@oss.qualcomm.com>
Tested-by: Nicolas Escande <nico.escande@gmail.com>
Reviewed-by: Vasanthakumar Thiagarajan <vasanthakumar.thiagarajan@oss.qualcomm.com>
Link: https://patch.msgid.link/20250810170018.1124014-1-rameshkumar.sundaram@oss.qualcomm.com
Signed-off-by: Jeff Johnson <jeff.johnson@oss.qualcomm.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 drivers/net/wireless/ath/ath11k/core.h |   2 +
 drivers/net/wireless/ath/ath11k/mac.c  | 111 +++++++++++++++++++++++--
 2 files changed, 104 insertions(+), 9 deletions(-)

diff --git a/drivers/net/wireless/ath/ath11k/core.h b/drivers/net/wireless/ath/ath11k/core.h
index 09fdb7be0e197..2fed2f58a0bd9 100644
--- a/drivers/net/wireless/ath/ath11k/core.h
+++ b/drivers/net/wireless/ath/ath11k/core.h
@@ -409,6 +409,8 @@ struct ath11k_vif {
 	bool do_not_send_tmpl;
 	struct ath11k_arp_ns_offload arp_ns_offload;
 	struct ath11k_rekey_data rekey_data;
+	u32 num_stations;
+	bool reinstall_group_keys;
 
 	struct ath11k_reg_tpc_power_info reg_tpc_info;
 
diff --git a/drivers/net/wireless/ath/ath11k/mac.c b/drivers/net/wireless/ath/ath11k/mac.c
index ddf4ec6b244b4..bd91d1deb26e1 100644
--- a/drivers/net/wireless/ath/ath11k/mac.c
+++ b/drivers/net/wireless/ath/ath11k/mac.c
@@ -4307,6 +4307,40 @@ static int ath11k_clear_peer_keys(struct ath11k_vif *arvif,
 	return first_errno;
 }
 
+static int ath11k_set_group_keys(struct ath11k_vif *arvif)
+{
+	struct ath11k *ar = arvif->ar;
+	struct ath11k_base *ab = ar->ab;
+	const u8 *addr = arvif->bssid;
+	int i, ret, first_errno = 0;
+	struct ath11k_peer *peer;
+
+	spin_lock_bh(&ab->base_lock);
+	peer = ath11k_peer_find(ab, arvif->vdev_id, addr);
+	spin_unlock_bh(&ab->base_lock);
+
+	if (!peer)
+		return -ENOENT;
+
+	for (i = 0; i < ARRAY_SIZE(peer->keys); i++) {
+		struct ieee80211_key_conf *key = peer->keys[i];
+
+		if (!key || (key->flags & IEEE80211_KEY_FLAG_PAIRWISE))
+			continue;
+
+		ret = ath11k_install_key(arvif, key, SET_KEY, addr,
+					 WMI_KEY_GROUP);
+		if (ret < 0 && first_errno == 0)
+			first_errno = ret;
+
+		if (ret < 0)
+			ath11k_warn(ab, "failed to set group key of idx %d for vdev %d: %d\n",
+				    i, arvif->vdev_id, ret);
+	}
+
+	return first_errno;
+}
+
 static int ath11k_mac_op_set_key(struct ieee80211_hw *hw, enum set_key_cmd cmd,
 				 struct ieee80211_vif *vif, struct ieee80211_sta *sta,
 				 struct ieee80211_key_conf *key)
@@ -4316,6 +4350,7 @@ static int ath11k_mac_op_set_key(struct ieee80211_hw *hw, enum set_key_cmd cmd,
 	struct ath11k_vif *arvif = ath11k_vif_to_arvif(vif);
 	struct ath11k_peer *peer;
 	struct ath11k_sta *arsta;
+	bool is_ap_with_no_sta;
 	const u8 *peer_addr;
 	int ret = 0;
 	u32 flags = 0;
@@ -4376,16 +4411,57 @@ static int ath11k_mac_op_set_key(struct ieee80211_hw *hw, enum set_key_cmd cmd,
 	else
 		flags |= WMI_KEY_GROUP;
 
-	ret = ath11k_install_key(arvif, key, cmd, peer_addr, flags);
-	if (ret) {
-		ath11k_warn(ab, "ath11k_install_key failed (%d)\n", ret);
-		goto exit;
-	}
+	ath11k_dbg(ar->ab, ATH11K_DBG_MAC,
+		   "%s for peer %pM on vdev %d flags 0x%X, type = %d, num_sta %d\n",
+		   cmd == SET_KEY ? "SET_KEY" : "DEL_KEY", peer_addr, arvif->vdev_id,
+		   flags, arvif->vdev_type, arvif->num_stations);
+
+	/* Allow group key clearing only in AP mode when no stations are
+	 * associated. There is a known race condition in firmware where
+	 * group addressed packets may be dropped if the key is cleared
+	 * and immediately set again during rekey.
+	 *
+	 * During GTK rekey, mac80211 issues a clear key (if the old key
+	 * exists) followed by an install key operation for same key
+	 * index. This causes ath11k to send two WMI commands in quick
+	 * succession: one to clear the old key and another to install the
+	 * new key in the same slot.
+	 *
+	 * Under certain conditions—especially under high load or time
+	 * sensitive scenarios, firmware may process these commands
+	 * asynchronously in a way that firmware assumes the key is
+	 * cleared whereas hardware has a valid key. This inconsistency
+	 * between hardware and firmware leads to group addressed packet
+	 * drops after rekey.
+	 * Only setting the same key again can restore a valid key in
+	 * firmware and allow packets to be transmitted.
+	 *
+	 * There is a use case where an AP can transition from Secure mode
+	 * to open mode without a vdev restart by just deleting all
+	 * associated peers and clearing key, Hence allow clear key for
+	 * that case alone. Mark arvif->reinstall_group_keys in such cases
+	 * and reinstall the same key when the first peer is added,
+	 * allowing firmware to recover from the race if it had occurred.
+	 */
 
-	ret = ath11k_dp_peer_rx_pn_replay_config(arvif, peer_addr, cmd, key);
-	if (ret) {
-		ath11k_warn(ab, "failed to offload PN replay detection %d\n", ret);
-		goto exit;
+	is_ap_with_no_sta = (vif->type == NL80211_IFTYPE_AP &&
+			     !arvif->num_stations);
+	if ((flags & WMI_KEY_PAIRWISE) || cmd == SET_KEY || is_ap_with_no_sta) {
+		ret = ath11k_install_key(arvif, key, cmd, peer_addr, flags);
+		if (ret) {
+			ath11k_warn(ab, "ath11k_install_key failed (%d)\n", ret);
+			goto exit;
+		}
+
+		ret = ath11k_dp_peer_rx_pn_replay_config(arvif, peer_addr, cmd, key);
+		if (ret) {
+			ath11k_warn(ab, "failed to offload PN replay detection %d\n",
+				    ret);
+			goto exit;
+		}
+
+		if ((flags & WMI_KEY_GROUP) && cmd == SET_KEY && is_ap_with_no_sta)
+			arvif->reinstall_group_keys = true;
 	}
 
 	spin_lock_bh(&ab->base_lock);
@@ -4984,6 +5060,7 @@ static int ath11k_mac_inc_num_stations(struct ath11k_vif *arvif,
 		return -ENOBUFS;
 
 	ar->num_stations++;
+	arvif->num_stations++;
 
 	return 0;
 }
@@ -4999,6 +5076,7 @@ static void ath11k_mac_dec_num_stations(struct ath11k_vif *arvif,
 		return;
 
 	ar->num_stations--;
+	arvif->num_stations--;
 }
 
 static u32 ath11k_mac_ieee80211_sta_bw_to_wmi(struct ath11k *ar,
@@ -9519,6 +9597,21 @@ static int ath11k_mac_station_add(struct ath11k *ar,
 		goto exit;
 	}
 
+	/* Driver allows the DEL KEY followed by SET KEY sequence for
+	 * group keys for only when there is no clients associated, if at
+	 * all firmware has entered the race during that window,
+	 * reinstalling the same key when the first sta connects will allow
+	 * firmware to recover from the race.
+	 */
+	if (arvif->num_stations == 1 && arvif->reinstall_group_keys) {
+		ath11k_dbg(ab, ATH11K_DBG_MAC, "set group keys on 1st station add for vdev %d\n",
+			   arvif->vdev_id);
+		ret = ath11k_set_group_keys(arvif);
+		if (ret)
+			goto dec_num_station;
+		arvif->reinstall_group_keys = false;
+	}
+
 	arsta->rx_stats = kzalloc(sizeof(*arsta->rx_stats), GFP_KERNEL);
 	if (!arsta->rx_stats) {
 		ret = -ENOMEM;
-- 
2.50.1




  parent reply	other threads:[~2025-09-07 20:30 UTC|newest]

Thread overview: 190+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-09-07 19:56 [PATCH 6.12 000/175] 6.12.46-rc1 review Greg Kroah-Hartman
2025-09-07 19:56 ` [PATCH 6.12 001/175] bpf: Add cookie object to bpf maps Greg Kroah-Hartman
2025-09-07 19:56 ` [PATCH 6.12 002/175] bpf: Move bpf map owner out of common struct Greg Kroah-Hartman
2025-09-07 19:56 ` [PATCH 6.12 003/175] bpf: Move cgroup iterator helpers to bpf.h Greg Kroah-Hartman
2025-09-07 19:56 ` [PATCH 6.12 004/175] bpf: Fix oob access in cgroup local storage Greg Kroah-Hartman
2025-09-07 19:56 ` [PATCH 6.12 005/175] btrfs: fix race between logging inode and checking if it was logged before Greg Kroah-Hartman
2025-09-07 19:56 ` [PATCH 6.12 006/175] btrfs: fix race between setting last_dir_index_offset and inode logging Greg Kroah-Hartman
2025-09-07 19:56 ` [PATCH 6.12 007/175] btrfs: avoid load/store tearing races when checking if an inode was logged Greg Kroah-Hartman
2025-09-07 19:56 ` [PATCH 6.12 008/175] LoongArch: Save LBT before FPU in setup_sigcontext() Greg Kroah-Hartman
2025-09-07 19:56 ` [PATCH 6.12 009/175] cdc_ncm: Flag Intel OEM version of Fibocom L850-GL as WWAN Greg Kroah-Hartman
2025-09-07 19:56 ` [PATCH 6.12 010/175] drm/amd/display: Dont warn when missing DCE encoder caps Greg Kroah-Hartman
2025-09-07 19:56 ` [PATCH 6.12 011/175] cpupower: Fix a bug where the -t option of the set subcommand was not working Greg Kroah-Hartman
2025-09-07 19:56 ` [PATCH 6.12 012/175] Bluetooth: hci_sync: Avoid adding default advertising on startup Greg Kroah-Hartman
2025-09-07 19:56 ` [PATCH 6.12 013/175] drm/rockchip: vop2: make vp registers nonvolatile Greg Kroah-Hartman
2025-09-07 21:33   ` Piotr Zalewski
2025-09-08  9:10     ` Greg Kroah-Hartman
2025-09-07 19:56 ` [PATCH 6.12 014/175] btrfs: zoned: skip ZONE FINISH of conventional zones Greg Kroah-Hartman
2025-09-07 19:56 ` [PATCH 6.12 015/175] fs: writeback: fix use-after-free in __mark_inode_dirty() Greg Kroah-Hartman
2025-09-07 19:56 ` [PATCH 6.12 016/175] tee: fix NULL pointer dereference in tee_shm_put Greg Kroah-Hartman
2025-09-07 19:56 ` [PATCH 6.12 017/175] tee: fix memory leak in tee_dyn_shm_alloc_helper Greg Kroah-Hartman
2025-09-07 19:56 ` [PATCH 6.12 018/175] arm64: dts: rockchip: Add vcc-supply to SPI flash on rk3399-pinebook-pro Greg Kroah-Hartman
2025-09-07 19:56 ` [PATCH 6.12 019/175] tee: optee: ffa: fix a typo of "optee_ffa_api_is_compatible" Greg Kroah-Hartman
2025-09-07 19:56 ` [PATCH 6.12 020/175] arm64: dts: imx8mp-tqma8mpql: fix LDO5 power off Greg Kroah-Hartman
2025-09-07 19:56 ` [PATCH 6.12 021/175] arm64: dts: imx8mp: Fix missing microSD slot vqmmc on DH electronics i.MX8M Plus DHCOM Greg Kroah-Hartman
2025-09-07 19:56 ` [PATCH 6.12 022/175] arm64: dts: imx8mp: Fix missing microSD slot vqmmc on Data Modul i.MX8M Plus eDM SBC Greg Kroah-Hartman
2025-09-07 19:56 ` [PATCH 6.12 023/175] HID: simplify snto32() Greg Kroah-Hartman
2025-09-07 19:56 ` [PATCH 6.12 024/175] HID: stop exporting hid_snto32() Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 025/175] HID: core: Harden s32ton() against conversion to 0 bits Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 026/175] net: usb: qmi_wwan: fix Telit Cinterion FN990A name Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 027/175] net: usb: qmi_wwan: fix Telit Cinterion FE990A name Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 028/175] net: usb: qmi_wwan: add Telit Cinterion FN990A w/audio composition Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 029/175] LoongArch: vDSO: Remove --hash-style=sysv Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 030/175] LoongArch: vDSO: Remove -nostdlib complier flag Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 031/175] mmc: sdhci-of-arasan: Support for emmc hardware reset Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 032/175] mmc: sdhci-of-arasan: Ensure CD logic stabilization before power-up Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 033/175] wifi: cfg80211: fix use-after-free in cmp_bss() Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 034/175] wifi: brcmfmac: fix use-after-free when rescheduling brcmf_btcoex_info work Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 035/175] wifi: mt76: mt7925: fix locking in mt7925_change_vif_links() Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 036/175] wifi: mt76: prevent non-offchannel mgmt tx during scan/roc Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 037/175] wifi: mt76: free pending offchannel tx frames on wcid cleanup Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 038/175] wifi: mt76: fix linked list corruption Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 039/175] netfilter: br_netfilter: do not check confirmed bit in br_nf_local_in() after confirm Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 040/175] netfilter: conntrack: helper: Replace -EEXIST by -EBUSY Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 041/175] wifi: iwlwifi: uefi: check DSM item validity Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 042/175] Bluetooth: vhci: Prevent use-after-free by removing debugfs files early Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 043/175] Bluetooth: Fix use-after-free in l2cap_sock_cleanup_listen() Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 044/175] netfilter: nft_flowtable.sh: re-run with random mtu sizes Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 045/175] net_sched: gen_estimator: fix est_timer() vs CONFIG_PREEMPT_RT=y Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 046/175] xirc2ps_cs: fix register access when enabling FullDuplex Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 047/175] mISDN: Fix memory leak in dsp_hwec_enable() Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 048/175] selftests: drv-net: csum: fix interface name for remote host Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 049/175] bnxt_en: fix incorrect page count in RX aggr ring log Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 050/175] icmp: fix icmp_ndo_send address translation for reply direction Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 051/175] net: macb: Fix tx_ptr_lock locking Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 052/175] macsec: read MACSEC_SA_ATTR_PN with nla_get_uint Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 053/175] net/smc: fix one NULL pointer dereference in smc_ib_is_sg_need_sync() Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 054/175] net: mctp: mctp_fraq_queue should take ownership of passed skb Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 055/175] ice: fix NULL access of tx->in_use in ice_ll_ts_intr Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 056/175] idpf: set mac type when adding and removing MAC filters Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 057/175] i40e: remove read access to debugfs files Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 058/175] i40e: Fix potential invalid access when MAC list is empty Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 059/175] ixgbe: fix incorrect map used in eee linkmode Greg Kroah-Hartman
2025-09-07 19:57 ` Greg Kroah-Hartman [this message]
2025-09-07 19:57 ` [PATCH 6.12 061/175] net/tcp: Fix socket memory leak in TCP-AO failure handling for IPv6 Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 062/175] net: ethernet: mtk_eth_soc: fix tx vlan tag for llc packets Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 063/175] net: skb: add pskb_network_may_pull_reason() helper Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 064/175] net: tunnel: add pskb_inet_may_pull_reason() helper Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 065/175] net: vxlan: add skb drop reasons to vxlan_rcv() Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 066/175] net: vxlan: make vxlan_snoop() return drop reasons Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 067/175] vxlan: Fix NPD when refreshing an FDB entry with a nexthop object Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 068/175] net: vxlan: make vxlan_set_mac() return drop reasons Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 069/175] net: vxlan: use kfree_skb_reason() in vxlan_xmit() Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 070/175] net: vxlan: use kfree_skb_reason() in vxlan_mdb_xmit() Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 071/175] net: vxlan: rename SKB_DROP_REASON_VXLAN_NO_REMOTE Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 072/175] vxlan: Refresh FDB updated time upon NTF_USE Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 073/175] vxlan: Avoid unnecessary updates to FDB used time Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 074/175] vxlan: Add RCU read-side critical sections in the Tx path Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 075/175] vxlan: Rename FDB Tx lookup function Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 076/175] vxlan: Fix NPD in {arp,neigh}_reduce() when using nexthop objects Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 077/175] wifi: cw1200: cap SSID length in cw1200_do_join() Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 078/175] wifi: libertas: cap SSID len in lbs_associate() Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 079/175] wifi: cfg80211: sme: cap SSID length in __cfg80211_connect_result() Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 080/175] net: thunder_bgx: add a missing of_node_put Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 081/175] net: thunder_bgx: decrement cleanup index before use Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 082/175] ipv4: Fix NULL vs error pointer check in inet_blackhole_dev_init() Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 083/175] net/smc: Remove validation of reserved bits in CLC Decline message Greg Kroah-Hartman
2025-09-07 19:57 ` [PATCH 6.12 084/175] mctp: return -ENOPROTOOPT for unknown getsockopt options Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 085/175] ax25: properly unshare skbs in ax25_kiss_rcv() Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 086/175] net: atm: fix memory leak in atm_register_sysfs when device_register fail Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 087/175] net: xilinx: axienet: Add error handling for RX metadata pointer retrieval Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 088/175] ppp: fix memory leak in pad_compress_skb Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 089/175] selftest: net: Fix weird setsockopt() in bind_bhash.c Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 090/175] phy: mscc: Stop taking ts_lock for tx_queue and use its own lock Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 091/175] ALSA: usb-audio: Add mute TLV for playback volumes on some devices Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 092/175] accel/ivpu: Prevent recovery work from being queued during device removal Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 093/175] ACPI/IORT: Fix memory leak in iort_rmr_alloc_sids() Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 094/175] arm64: ftrace: fix unreachable PLT for ftrace_caller in init_module with CONFIG_DYNAMIC_FTRACE Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 095/175] pcmcia: Fix a NULL pointer dereference in __iodyn_find_io_region() Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 096/175] io_uring/msg_ring: ensure io_kiocb freeing is deferred for RCU Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 097/175] x86/mm/64: define ARCH_PAGE_TABLE_SYNC_MASK and arch_sync_kernel_mappings() Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 098/175] mm/userfaultfd: fix kmap_local LIFO ordering for CONFIG_HIGHPTE Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 099/175] mm: move page table sync declarations to linux/pgtable.h Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 100/175] mm: fix possible deadlock in kmemleak Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 101/175] mm: slub: avoid wake up kswapd in set_track_prepare Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 102/175] sched: Fix sched_numa_find_nth_cpu() if mask offline Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 103/175] kasan: fix GCC mem-intrinsic prefix with sw tags Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 104/175] ocfs2: prevent release journal inode after journal shutdown Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 105/175] proc: fix missing pde_set_flags() for net proc files Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 106/175] of_numa: fix uninitialized memory nodes causing kernel panic Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 107/175] soc: qcom: mdt_loader: Deal with zero e_shentsize Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 108/175] wifi: mwifiex: Initialize the chan_stats array to zero Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 109/175] wifi: mt76: mt7925u: use connac3 tx aggr check in tx complete Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 110/175] wifi: mt76: mt7996: Initialize hdr before passing to skb_put_data() Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 111/175] wifi: mt76: mt7925: fix the wrong bss cleanup for SAP Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 112/175] net: ethernet: oa_tc6: Handle failure of spi_setup Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 113/175] drm/amdgpu: drop hw access in non-DC audio fini Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 114/175] drm/amd/display: Clear the CUR_ENABLE register on DCN314 w/out DPP PG Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 115/175] platform/x86/amd/pmc: Add TUXEDO IB Pro Gen10 AMD to spurious 8042 quirks list Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 116/175] scsi: lpfc: Fix buffer free/clear order in deferred receive path Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 117/175] batman-adv: fix OOB read/write in network-coding decode Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 118/175] cifs: prevent NULL pointer dereference in UTF16 conversion Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 119/175] e1000e: fix heap overflow in e1000_set_eeprom Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 120/175] net: pcs: rzn1-miic: Correct MODCTRL register offset Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 121/175] microchip: lan865x: Fix module autoloading Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 122/175] microchip: lan865x: Fix LAN8651 autoloading Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 123/175] fs/fhandle.c: fix a race in call of has_locked_children() Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 124/175] net: dsa: add hook to determine whether EEE is supported Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 125/175] net: dsa: provide implementation of .support_eee() Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 126/175] net: dsa: b53/bcm_sf2: implement .support_eee() method Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 127/175] net: dsa: b53: do not enable EEE on bcm63xx Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 128/175] md/raid1,raid10: dont ignore IO flags Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 129/175] md/raid1,raid10: dont handle IO error for REQ_RAHEAD and REQ_NOWAIT Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 130/175] md/raid1,raid10: strip REQ_NOWAIT from member bios Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 131/175] ext4: define ext4_journal_destroy wrapper Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 132/175] ext4: avoid journaling sb update on error if journal is destroying Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 133/175] wifi: ath11k: update channel list in reg notifier instead reg worker Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 134/175] wifi: ath11k: update channel list in worker when wait flag is set Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 135/175] net: fix NULL pointer dereference in l3mdev_l3_rcv Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 136/175] md/md-bitmap: fix wrong bitmap_limit for clustermd when write sb Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 137/175] mm: slub: Print the broken data before restoring them Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 138/175] mm: slub: call WARN() when detecting a slab corruption Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 139/175] mm, slab: cleanup slab_bug() parameters Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 140/175] mm/slub: avoid accessing metadata when pointer is invalid in object_err() Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 141/175] nouveau: fix disabling the nonstall irq due to storm code Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 142/175] kunit: kasan_test: disable fortify string checker on kasan_strings() test Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 143/175] mm: fix accounting of memmap pages Greg Kroah-Hartman
2025-09-07 19:58 ` [PATCH 6.12 144/175] thermal/drivers/mediatek/lvts: Disable low offset IRQ for minimum threshold Greg Kroah-Hartman
2025-09-07 19:59 ` [PATCH 6.12 145/175] dmaengine: mediatek: Fix a possible deadlock error in mtk_cqdma_tx_status() Greg Kroah-Hartman
2025-09-07 19:59 ` [PATCH 6.12 146/175] rust: support Rust >= 1.91.0 target spec Greg Kroah-Hartman
2025-09-07 19:59 ` [PATCH 6.12 147/175] ALSA: hda/hdmi: Add pin fix for another HP EliteDesk 800 G4 model Greg Kroah-Hartman
2025-09-07 19:59 ` [PATCH 6.12 148/175] ALSA: hda/realtek: Fix headset mic for TongFang X6[AF]R5xxY Greg Kroah-Hartman
2025-09-07 19:59 ` [PATCH 6.12 149/175] Revert "drm/amdgpu: Avoid extra evict-restore process." Greg Kroah-Hartman
2025-09-07 19:59 ` [PATCH 6.12 150/175] pcmcia: omap: Add missing check for platform_get_resource Greg Kroah-Hartman
2025-09-07 19:59 ` [PATCH 6.12 151/175] pcmcia: Add error handling for add_interval() in do_validate_mem() Greg Kroah-Hartman
2025-09-07 19:59 ` [PATCH 6.12 152/175] platform/x86: asus-wmi: Remove extra keys from ignore_key_wlan quirk Greg Kroah-Hartman
2025-09-07 19:59 ` [PATCH 6.12 153/175] platform/x86/intel: power-domains: Use topology_logical_package_id() for package ID Greg Kroah-Hartman
2025-09-07 19:59 ` [PATCH 6.12 154/175] hwmon: mlxreg-fan: Prevent fans from getting stuck at 0 RPM Greg Kroah-Hartman
2025-09-07 19:59 ` [PATCH 6.12 155/175] block: add a queue_limits_commit_update_frozen helper Greg Kroah-Hartman
2025-09-07 19:59 ` [PATCH 6.12 156/175] scsi: sr: Reinstate rotational media flag Greg Kroah-Hartman
2025-09-07 19:59 ` [PATCH 6.12 157/175] spi: spi-fsl-lpspi: Fix transmissions when using CONT Greg Kroah-Hartman
2025-09-07 19:59 ` [PATCH 6.12 158/175] spi: spi-fsl-lpspi: Set correct chip-select polarity bit Greg Kroah-Hartman
2025-09-07 19:59 ` [PATCH 6.12 159/175] spi: spi-fsl-lpspi: Reset FIFO and disable module on transfer abort Greg Kroah-Hartman
2025-09-07 19:59 ` [PATCH 6.12 160/175] spi: spi-fsl-lpspi: Clear status register after disabling the module Greg Kroah-Hartman
2025-09-07 19:59 ` [PATCH 6.12 161/175] drm/bridge: ti-sn65dsi86: fix REFCLK setting Greg Kroah-Hartman
2025-09-07 19:59 ` [PATCH 6.12 162/175] perf bpf-event: Fix use-after-free in synthesis Greg Kroah-Hartman
2025-09-07 19:59 ` [PATCH 6.12 163/175] perf bpf-utils: Constify bpil_array_desc Greg Kroah-Hartman
2025-09-07 19:59 ` [PATCH 6.12 164/175] perf bpf-utils: Harden get_bpf_prog_info_linear Greg Kroah-Hartman
2025-09-07 19:59 ` [PATCH 6.12 165/175] drm/amd/amdgpu: Fix missing error return on kzalloc failure Greg Kroah-Hartman
2025-09-07 19:59 ` [PATCH 6.12 166/175] tools: gpio: remove the include directory on make clean Greg Kroah-Hartman
2025-09-07 19:59 ` [PATCH 6.12 167/175] md: prevent incorrect update of resync/recovery offset Greg Kroah-Hartman
2025-09-07 19:59 ` [PATCH 6.12 168/175] ACPI: RISC-V: Fix FFH_CPPC_CSR error handling Greg Kroah-Hartman
2025-09-07 19:59 ` [PATCH 6.12 169/175] riscv: Only allow LTO with CMODEL_MEDANY Greg Kroah-Hartman
2025-09-07 19:59 ` [PATCH 6.12 170/175] riscv: use lw when reading int cpu in new_vmalloc_check Greg Kroah-Hartman
2025-09-07 19:59 ` [PATCH 6.12 171/175] riscv: use lw when reading int cpu in asm_per_cpu Greg Kroah-Hartman
2025-09-07 19:59 ` [PATCH 6.12 172/175] riscv, bpf: use lw when reading int cpu in BPF_MOV64_PERCPU_REG Greg Kroah-Hartman
2025-09-07 19:59 ` [PATCH 6.12 173/175] riscv, bpf: use lw when reading int cpu in bpf_get_smp_processor_id Greg Kroah-Hartman
2025-09-07 19:59 ` [PATCH 6.12 174/175] md/raid1: fix data lost for writemostly rdev Greg Kroah-Hartman
2025-09-07 19:59 ` [PATCH 6.12 175/175] dmaengine: mediatek: Fix a flag reuse error in mtk_cqdma_tx_status() Greg Kroah-Hartman
2025-09-08  3:42 ` [PATCH 6.12 000/175] 6.12.46-rc1 review Florian Fainelli
2025-09-08  9:25 ` Brett A C Sheffield
2025-09-08 11:29 ` Miguel Ojeda
2025-09-08 12:55 ` Peter Schneider
2025-09-08 15:01 ` Jon Hunter
2025-09-08 17:05 ` Brett Mastbergen
2025-09-08 22:36 ` Shuah Khan
2025-09-09  5:25 ` Harshit Mogalapalli
2025-09-09  5:53 ` Ron Economos
2025-09-09 11:21 ` Mark Brown
2025-09-09 11:33 ` Naresh Kamboju
2025-09-09 17:43 ` Hardik Garg

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=20250907195616.257010268@linuxfoundation.org \
    --to=gregkh@linuxfoundation.org \
    --cc=jeff.johnson@oss.qualcomm.com \
    --cc=lists@steffen-moser.de \
    --cc=nico.escande@gmail.com \
    --cc=patches@lists.linux.dev \
    --cc=rameshkumar.sundaram@oss.qualcomm.com \
    --cc=sashal@kernel.org \
    --cc=stable@vger.kernel.org \
    --cc=vasanthakumar.thiagarajan@oss.qualcomm.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).