CVE-2026-23002
kernel: lib/buildid: use __kernel_read() for sleepable context
Severity
LowRed Hat Product Security
CVSS 3.1
Review impact separately from score.
Published · January 25, 2026
Updated · October 29, 2026
Description
In the Linux kernel, the following vulnerability has been resolved:
lib/buildid: use __kernel_read() for sleepable context
Prevent a "BUG: unable to handle kernel NULL pointer dereference in filemap_read_folio".
For the sleepable context, convert freader to use __kernel_read() instead of direct page cache access via read_cache_folio(). This simplifies the faultable code path by using the standard kernel file reading interface which handles all the complexity of reading file data.
At the moment we are not changing the code for non-sleepable context which uses filemap_get_folio() and only succeeds if the target folios are already in memory and up-to-date. The reason is to keep the patch simple and easier to backport to stable kernels.
Syzbot repro does not crash the kernel anymore and the selftests run successfully.
In the follow up we will make __kernel_read() with IOCB_NOWAIT work for non-sleepable contexts. In addition, I would like to replace the secretmem check with a more generic approach and will add fstest for the buildid code.
Statement
A kernel NULL pointer dereference could be triggered in the lib buildid sleepable parsing path because it accessed file data through direct page cache folio operations and could reach filemap_read_folio in an unsafe state. This leads to a host kernel crash and denial of service. For the CVSS the PR is L because triggering typically requires a local user to exercise buildid parsing through available kernel interfaces such as BPF or related tooling and to provide inputs that force the faultable read path. The issue is not network reachable by itself and depends on local access and system configuration. Impact is denial of service only.
CVSS score applicability
The CVSS score(s) listed for this vulnerability do not reflect the associated product's status, and are included for informational purposes to better understand the severity of this vulnerability.
Mitigation
No mitigation is specified in collected source.
CVSS / CWE
CVSS 3.1 · 4.7CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H
CWE-476 · NULL Pointer Dereference