CVEvulnerability

CVE-2026-31687

5.5 MEDIUM Published 2026-04-27 Modified 2026-06-17 Official page ↗
Status
Analyzed
Published
2026-04-27
Last modified
2026-06-17
Assigner
416baaa9-dc9f-4396-8d5f-8c081fb06d67
CVSS 3.1 ([email protected])
5.5 MEDIUM — CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Weaknesses
CWE-667

Description

In the Linux kernel, the following vulnerability has been resolved: gpio: omap: do not register driver in probe() Commit 11a78b794496 ("ARM: OMAP: MPUIO wake updates") registers the omap_mpuio_driver from omap_mpuio_init(), which is called from omap_gpio_probe(). However, it neither makes sense to register drivers from probe() callbacks of other drivers, nor does the driver core allow registering drivers with a device lock already being held. The latter was revealed by commit dc23806a7c47 ("driver core: enforce device_lock for driver_match_device()") leading to a potential deadlock condition described in [1]. Additionally, the omap_mpuio_driver is never unregistered from the driver core, even if the module is unloaded. Hence, register the omap_mpuio_driver from the module initcall and unregister it in module_exit().

Affected configurations

• linux linux kernel (>= 2.6.22 < 5.10.251) • linux linux kernel (>= 5.11 < 5.15.201) • linux linux kernel (>= 5.16 < 6.1.164) • linux linux kernel (>= 6.2 < 6.6.125) • linux linux kernel (>= 6.7 < 6.12.72) • linux linux kernel (>= 6.13 < 6.18.11) • linux linux kernel 6.19

Related

Weakness · CWE (1)

  • CWE-667 Improper Locking weakness

References