CVE-2025-38284
Severity CVSS v4.0:
Pending analysis
Type:
CWE-476
NULL Pointer Dereference
Publication date:
10/07/2025
Last modified:
19/11/2025
Description
In the Linux kernel, the following vulnerability has been resolved:<br />
<br />
wifi: rtw89: pci: configure manual DAC mode via PCI config API only<br />
<br />
To support 36-bit DMA, configure chip proprietary bit via PCI config API<br />
or chip DBI interface. However, the PCI device mmap isn&#39;t set yet and<br />
the DBI is also inaccessible via mmap, so only if the bit can be accessible<br />
via PCI config API, chip can support 36-bit DMA. Otherwise, fallback to<br />
32-bit DMA.<br />
<br />
With NULL mmap address, kernel throws trace:<br />
<br />
BUG: unable to handle page fault for address: 0000000000001090<br />
#PF: supervisor write access in kernel mode<br />
#PF: error_code(0x0002) - not-present page<br />
PGD 0 P4D 0<br />
Oops: Oops: 0002 [#1] PREEMPT SMP PTI<br />
CPU: 1 UID: 0 PID: 71 Comm: irq/26-pciehp Tainted: G OE 6.14.2-061402-generic #202504101348<br />
Tainted: [O]=OOT_MODULE, [E]=UNSIGNED_MODULE<br />
RIP: 0010:rtw89_pci_ops_write16+0x12/0x30 [rtw89_pci]<br />
RSP: 0018:ffffb0ffc0acf9d8 EFLAGS: 00010206<br />
RAX: ffffffffc158f9c0 RBX: ffff94865e702020 RCX: 0000000000000000<br />
RDX: 0000000000000718 RSI: 0000000000001090 RDI: ffff94865e702020<br />
RBP: ffffb0ffc0acf9d8 R08: 0000000000000000 R09: 0000000000000000<br />
R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000015<br />
R13: 0000000000000719 R14: ffffb0ffc0acfa1f R15: ffffffffc1813060<br />
FS: 0000000000000000(0000) GS:ffff9486f3480000(0000) knlGS:0000000000000000<br />
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033<br />
CR2: 0000000000001090 CR3: 0000000090440001 CR4: 00000000000626f0<br />
Call Trace:<br />
<br />
rtw89_pci_read_config_byte+0x6d/0x120 [rtw89_pci]<br />
rtw89_pci_cfg_dac+0x5b/0xb0 [rtw89_pci]<br />
rtw89_pci_probe+0xa96/0xbd0 [rtw89_pci]<br />
? __pfx___device_attach_driver+0x10/0x10<br />
? __pfx___device_attach_driver+0x10/0x10<br />
local_pci_probe+0x47/0xa0<br />
pci_call_probe+0x5d/0x190<br />
pci_device_probe+0xa7/0x160<br />
really_probe+0xf9/0x370<br />
? pm_runtime_barrier+0x55/0xa0<br />
__driver_probe_device+0x8c/0x140<br />
driver_probe_device+0x24/0xd0<br />
__device_attach_driver+0xcd/0x170<br />
bus_for_each_drv+0x99/0x100<br />
__device_attach+0xb4/0x1d0<br />
device_attach+0x10/0x20<br />
pci_bus_add_device+0x59/0x90<br />
pci_bus_add_devices+0x31/0x80<br />
pciehp_configure_device+0xaa/0x170<br />
pciehp_enable_slot+0xd6/0x240<br />
pciehp_handle_presence_or_link_change+0xf1/0x180<br />
pciehp_ist+0x162/0x1c0<br />
irq_thread_fn+0x24/0x70<br />
irq_thread+0xef/0x1c0<br />
? __pfx_irq_thread_fn+0x10/0x10<br />
? __pfx_irq_thread_dtor+0x10/0x10<br />
? __pfx_irq_thread+0x10/0x10<br />
kthread+0xfc/0x230<br />
? __pfx_kthread+0x10/0x10<br />
ret_from_fork+0x47/0x70<br />
? __pfx_kthread+0x10/0x10<br />
ret_from_fork_asm+0x1a/0x30<br />
Impact
Base Score 3.x
5.50
Severity 3.x
MEDIUM
Vulnerable products and versions
| CPE | From | Up to |
|---|---|---|
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.11 (including) | 6.15.3 (excluding) |
To consult the complete list of CPE names with products and versions, see this page



