CVEvulnerability
CVE-2025-68330
- Status
- Deferred
- Published
- 2025-12-22
- Last modified
- 2026-10-19
- Assigner
- 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Description
In the Linux kernel, the following vulnerability has been resolved:
iio: accel: bmc150: Fix irq assumption regression
The code in bmc150-accel-core.c unconditionally calls
bmc150_accel_set_interrupt() in the iio_buffer_setup_ops,
such as on the runtime PM resume path giving a kernel
splat like this if the device has no interrupts:
Unable to handle kernel NULL pointer dereference at virtual
address 00000001 when read
PC is at bmc150_accel_set_interrupt+0x98/0x194
LR is at __pm_runtime_resume+0x5c/0x64
(...)
Call trace:
bmc150_accel_set_interrupt from bmc150_accel_buffer_postenable+0x40/0x108
bmc150_accel_buffer_postenable from __iio_update_buffers+0xbe0/0xcbc
__iio_update_buffers from enable_store+0x84/0xc8
enable_store from kernfs_fop_write_iter+0x154/0x1b4
This bug seems to have been in the driver since the beginning,
but it only manifests recently, I do not know why.
Store the IRQ number in the state struct, as this is a common
pattern in other drivers, then use this to determine if we have
IRQ support or not.
References
- https://git.kernel.org/stable/c/3aa385a9c75c09b59dcab2ff76423439d23673ab git.kernel.org
- https://git.kernel.org/stable/c/65ad4ed983fd9ee0259d86391d6a53f78203918c git.kernel.org
- https://git.kernel.org/stable/c/93eaa5ddc5fc4f50ac396afad8ce261102ebd4f3 git.kernel.org
- https://git.kernel.org/stable/c/aad9d048a3211c48ec02efa405bf462856feb862 git.kernel.org
- https://git.kernel.org/stable/c/c891f504bb66604c822e7985e093cf39b97fdeb0 git.kernel.org
- https://git.kernel.org/stable/c/cdd4a9e98004bd7c7488311951fa6dbae38b2b80 git.kernel.org