]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
wifi: ath11k: fix NULL dereference in ath11k_qmi_m3_load()
authorMatvey Kovalev <matvey.kovalev@ispras.ru>
Wed, 17 Sep 2025 19:20:01 +0000 (22:20 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 6 Oct 2025 09:18:48 +0000 (11:18 +0200)
commit 3fd2ef2ae2b5c955584a3bee8e83ae7d7a98f782 upstream.

If ab->fw.m3_data points to data, then fw pointer remains null.
Further, if m3_mem is not allocated, then fw is dereferenced to be
passed to ath11k_err function.

Replace fw->size by m3_len.

Found by Linux Verification Center (linuxtesting.org) with SVACE.

Fixes: 7db88b962f06 ("wifi: ath11k: add firmware-2.bin support")
Cc: stable@vger.kernel.org
Signed-off-by: Matvey Kovalev <matvey.kovalev@ispras.ru>
Reviewed-by: Baochen Qiang <baochen.qiang@oss.qualcomm.com>
Reviewed-by: Vasanthakumar Thiagarajan <vasanthakumar.thiagarajan@oss.qualcomm.com>
Link: https://patch.msgid.link/20250917192020.1340-1-matvey.kovalev@ispras.ru
Signed-off-by: Jeff Johnson <jeff.johnson@oss.qualcomm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/net/wireless/ath/ath11k/qmi.c

index 2782f4723e4138d37a6a567ae5f0ddc5bbd79767..6a2600054a1f53f64b4c762d292d449841d8b9ef 100644 (file)
@@ -2555,7 +2555,7 @@ static int ath11k_qmi_m3_load(struct ath11k_base *ab)
                                           GFP_KERNEL);
        if (!m3_mem->vaddr) {
                ath11k_err(ab, "failed to allocate memory for M3 with size %zu\n",
-                          fw->size);
+                          m3_len);
                ret = -ENOMEM;
                goto out;
        }