FAILED: patch "[PATCH] ath10k: drop MPDU which has discard flag set by firmware for" failed to apply to 4.9-stable tree
Subsystems (2)
[email protected]
maintainerThe patch below does not apply to the 4.9-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
From 079a108feba474b4b32bd3471db03e11f2f83b81 Mon Sep 17 00:00:00 2001
From: Wen Gong <[email protected]>
Date: Tue, 11 May 2021 20:02:55 +0200
Subject: [PATCH] ath10k: drop MPDU which has discard flag set by firmware for
SDIO
When the discard flag is set by the firmware for an MPDU, it should be dropped. This allows a mitigation for CVE-2020-24588 to be implemented in the firmware.
Tested-on: QCA6174 hw3.2 SDIO WLAN.RMH.4.4.1-00049
Signed-off-by Wen Gong <[email protected]>
Signed-off-by Jouni Malinen <[email protected]>
Link https://lore.kernel.org/r/20210511200110.11968c725b5c.Idd166365ebea2771c0c0a38c78b5060750f90e17@changeid open here
Signed-off-by Johannes Berg <[email protected]>
drivers/net/wireless/ath/ath10k/htt_rx.c +5 -0
@@ -2312,6 +2312,11 @@ static bool ath10k_htt_rx_proc_rx_ind_hl(struct ath10k_htt *htt, fw_desc = &rx->fw_desc; rx_desc_len = fw_desc->len; +if (fw_desc->u.bits.discard) { +ath10k_dbg (ar,ATH10K_DBG_HTT ,"htt discard mpdu\n" ); + goto err; + } +/* I have not yet seen any case where num_mpdu_ranges > 1. * qcacld does not seem handle that case either, so we introduce the * same limitiation here as well.
drivers/net/wireless/ath/ath10k/rx_desc.h +13 -1
@@ -1282,7 +1282,19 @@ struct fw_rx_desc_base {#define FW_RX_DESC_UDP (1 << 6)struct fw_rx_desc_hl { -u8 info0; +union { +struct { +u8 discard:1 , + forward:1 , + any_err:1 , + dup_err:1 , + reserved:1 , + inspect:1 , + extension:2 ; + } bits; +u8 info0; + } u; +u8 version;u8 len;u8 flags;