ASoC: qcom: q6apm: fix NULL pointer dereference in graph_callback
3Vexday Risk Score
Sin señal de explotación. Ningún artefacto público de explotación conocido hasta ahora.
ssvc Trackepss 0.2%
probabilidad de explotación
0.2%top 89% de las CVE
explotación observada
noninguna fuente lo reporta
In the Linux kernel, the following vulnerability has been resolved:
ASoC: qcom: q6apm: fix NULL pointer dereference in graph_callback
When q6apm_free_fragments() is called it frees rx_data.buf/tx_data.buf
and sets them to NULL under graph->lock. A late DSP buffer-done response
can race with this: graph_callback() passes the !graph->ar_graph guard
(not yet NULL), acquires the lock, but then dereferences a now-NULL buf
pointer to read buf[token].phys, crashing at virtual address 0x10.
Add a NULL check for buf inside the mutex-protected section in both the
write-done (DATA_CMD_RSP_WR_SH_MEM_EP_DATA_BUFFER_DONE_V2) and
read-done (DATA_CMD_RSP_RD_SH_MEM_EP_DATA_BUFFER_V2) handlers and bail
out cleanly if buffers have already been freed.
This problem is only shown up recently while apr bus was updated to
process the commands per service rather from single global queue.
Productos afectados
Linux · LinuxReferencias
https://git.kernel.org/stable/c/214af790e3a33ab73587de4c925c60a550eae9c6https://git.kernel.org/stable/c/2c715f8a1e644ce4c3e8be5b0fd3f1f4704b73b3https://git.kernel.org/stable/c/2e9261761b35f0b67b7487688cd1365f535be0b3https://git.kernel.org/stable/c/a164e744d8de1c41049bd9a1452a4b6bbf5bd8bchttps://git.kernel.org/stable/c/ca028334343a140efda4b22e53cbce2c5e94a489https://git.kernel.org/stable/c/ec369eac0795cfa8f4d3a0cd35a1e8e15f780331