diff --git a/feeds/ipq807x_v5.4/mac80211/patches/pending/a-105-ath11k-qmi-event-leak.patch b/feeds/ipq807x_v5.4/mac80211/patches/pending/a-105-ath11k-qmi-event-leak.patch new file mode 100644 index 000000000..570372106 --- /dev/null +++ b/feeds/ipq807x_v5.4/mac80211/patches/pending/a-105-ath11k-qmi-event-leak.patch @@ -0,0 +1,39 @@ +From 72de799aa9e3e064b35238ef053d2f0a49db055a Mon Sep 17 00:00:00 2001 +From: Baochen Qiang +Date: Tue, 28 Sep 2021 14:00:44 +0300 +Subject: ath11k: Fix memory leak in ath11k_qmi_driver_event_work + +The buffer pointed to by event is not freed in case +ATH11K_FLAG_UNREGISTERING bit is set, resulting in +memory leak, so fix it. + +Tested-on: WCN6855 hw2.0 PCI WLAN.HSP.1.1-01720.1-QCAHSPSWPL_V1_V2_SILICONZ_LITE-1 + +Fixes: d5c65159f289 ("ath11k: driver for Qualcomm IEEE 802.11ax devices") +Signed-off-by: Baochen Qiang +Signed-off-by: Jouni Malinen +Signed-off-by: Kalle Valo +Link: https://lore.kernel.org/r/20210913180246.193388-4-jouni@codeaurora.org +--- + drivers/net/wireless/ath/ath11k/qmi.c | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/drivers/net/wireless/ath/ath11k/qmi.c b/drivers/net/wireless/ath/ath11k/qmi.c +index babadd574e4b9c..8c615bc788cacf 100644 +--- a/drivers/net/wireless/ath/ath11k/qmi.c ++++ b/drivers/net/wireless/ath/ath11k/qmi.c +@@ -2759,8 +2759,10 @@ static void ath11k_qmi_driver_event_work(struct work_struct *work) + list_del(&event->list); + spin_unlock(&qmi->event_lock); + +- if (test_bit(ATH11K_FLAG_UNREGISTERING, &ab->dev_flags)) ++ if (test_bit(ATH11K_FLAG_UNREGISTERING, &ab->dev_flags)) { ++ kfree(event); + return; ++ } + + switch (event->type) { + case ATH11K_QMI_EVENT_SERVER_ARRIVE: +-- +cgit 1.2.3-korg +