---
id: CVE-2025-38605
title: 'wifi: ath12k: Pass ab pointer directly to ath12k_dp_tx_get_encap_type()'
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  wifi: ath12k: Pass ab pointer directly to ath12k_dp_tx_get_encap_type()

  In ath12k_dp_tx_get_encap_type(), the arvif parameter is only used to
  retrieve the ab pointer. …
severity: none
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= e93bbd65547ea8073b707c9034c3f051f8018614 <
    be27a11a42b2190f817b198bf5e753e5e4ac849e
  - >-
    Linux >= e93bbd65547ea8073b707c9034c3f051f8018614 <
    d9d2a0466e981d1be95fc8bdc05806ea21def758
  - >-
    Linux >= e93bbd65547ea8073b707c9034c3f051f8018614 <
    b508f370f88f277c95e2bd3bc47217a96d668cee
  - >-
    Linux >= e93bbd65547ea8073b707c9034c3f051f8018614 <
    ee4f8e7fa578f9f28cef5f409677db25f4f83d7e
  - >-
    Linux >= e93bbd65547ea8073b707c9034c3f051f8018614 <
    05062834350f0bf7ad1abcebc2807220e90220eb
  - Linux 6.4
published: '2025-08-19'
updated: '2026-10-21'
sourceUpdated: '2026-10-21T12:37:10.261Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2025-38605'
references:
  - url: 'https://git.kernel.org/stable/c/be27a11a42b2190f817b198bf5e753e5e4ac849e'
  - url: 'https://git.kernel.org/stable/c/d9d2a0466e981d1be95fc8bdc05806ea21def758'
  - url: 'https://git.kernel.org/stable/c/b508f370f88f277c95e2bd3bc47217a96d668cee'
  - url: 'https://git.kernel.org/stable/c/ee4f8e7fa578f9f28cef5f409677db25f4f83d7e'
  - url: 'https://git.kernel.org/stable/c/05062834350f0bf7ad1abcebc2807220e90220eb'
tags:
  - cve.org
epss: 0.00197
epssPercentile: 0.09324
ingestedAt: '2026-10-21T12:48:53.701Z'
---

## Overview

In the Linux kernel, the following vulnerability has been resolved:

wifi: ath12k: Pass ab pointer directly to ath12k_dp_tx_get_encap_type()

In ath12k_dp_tx_get_encap_type(), the arvif parameter is only used to
retrieve the ab pointer. In vdev delete sequence the arvif->ar could
become NULL and that would trigger kernel panic.
Since the caller ath12k_dp_tx() already has a valid ab pointer, pass it
directly to avoid panic and unnecessary dereferencing.

PC points to "ath12k_dp_tx+0x228/0x988 [ath12k]"
LR points to "ath12k_dp_tx+0xc8/0x988 [ath12k]".
The Backtrace obtained is as follows:
ath12k_dp_tx+0x228/0x988 [ath12k]
ath12k_mac_tx_check_max_limit+0x608/0x920 [ath12k]
ieee80211_process_measurement_req+0x320/0x348 [mac80211]
ieee80211_tx_dequeue+0x9ac/0x1518 [mac80211]
ieee80211_tx_dequeue+0xb14/0x1518 [mac80211]
ieee80211_tx_prepare_skb+0x224/0x254 [mac80211]
ieee80211_xmit+0xec/0x100 [mac80211]
__ieee80211_subif_start_xmit+0xc50/0xf40 [mac80211]
ieee80211_subif_start_xmit+0x2e8/0x308 [mac80211]
netdev_start_xmit+0x150/0x18c
dev_hard_start_xmit+0x74/0xc0

Tested-on: QCN9274 hw2.0 PCI WLAN.WBE.1.3.1-00173-QCAHKSWPL_SILICONZ-1

## Affected

- `Linux >= e93bbd65547ea8073b707c9034c3f051f8018614 < be27a11a42b2190f817b198bf5e753e5e4ac849e`
- `Linux >= e93bbd65547ea8073b707c9034c3f051f8018614 < d9d2a0466e981d1be95fc8bdc05806ea21def758`
- `Linux >= e93bbd65547ea8073b707c9034c3f051f8018614 < b508f370f88f277c95e2bd3bc47217a96d668cee`
- `Linux >= e93bbd65547ea8073b707c9034c3f051f8018614 < ee4f8e7fa578f9f28cef5f409677db25f4f83d7e`
- `Linux >= e93bbd65547ea8073b707c9034c3f051f8018614 < 05062834350f0bf7ad1abcebc2807220e90220eb`
- `Linux 6.4`

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
