CVE-2025-38636

Summary

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

rv: Use strings in da monitors tracepoints

Using DA monitors tracepoints with KASAN enabled triggers the following warning:

BUG: KASAN: global-out-of-bounds in do_trace_event_raw_event_event_da_monitor+0xd6/0x1a0 Read of size 32 at addr ffffffffaada8980 by task … Call Trace: <TASK> […] do_trace_event_raw_event_event_da_monitor+0xd6/0x1a0 ? __pfx_do_trace_event_raw_event_event_da_monitor+0x10/0x10 ? trace_event_sncid+0x83/0x200 trace_event_sncid+0x163/0x200 […] The buggy address belongs to the variable: automaton_snep+0x4e0/0x5e0

This is caused by the tracepoints reading 32 bytes __array instead of __string from the automata definition. Such strings are literals and reading 32 bytes ends up in out of bound memory accesses (e.g. the next automaton's data in this case). The error is harmless as, while printing the string, we stop at the null terminator, but it should still be fixed.

Use the __string facilities while defining the tracepoints to avoid reading out of bound memory.

Affected Software

VendorProductVersion RangeStatus
LinuxLinux792575348ff70e05c6040d02fce38e949ef92c37 < 0ebc70d973ce7a81826b5c4f55f743e07f5864d9affected
LinuxLinux792575348ff70e05c6040d02fce38e949ef92c37 < 7f904ff6e58d398c4336f3c19c42b338324451f7affected
LinuxLinux6.0affected
LinuxLinux0 < 6.0unaffected
LinuxLinux6.16.1 <= 6.16.*unaffected
LinuxLinux6.17 <= *unaffected

Weaknesses

References