Linux kernel
cpe:2.3:a:linux:linux_kernel:*:*:*:*:*:*:*, +4 more
A vulnerability exists in the Linux kernel's OMAP GPIO driver related to how the OMAP MPU Input/Output (MPUIO) driver is registered. The OMAP MPUIO driver is registered during the GPIO probe process, which is not a suitable practice. This registration method can lead to a deadlock, as the driver core does not permit registering drivers while holding a device lock, a condition introduced by a recent change in the driver core. Furthermore, the OMAP MPUIO driver is not properly unregistered when the module is unloaded, creating potential for resource leaks or undefined behavior.
The improper registration of the OMAP MPUIO driver can lead to a deadlock situation, where the system becomes unresponsive or fails to function correctly, particularly in relation to GPIO operations.
The vulnerability can be reproduced by loading the OMAP GPIO driver, which will trigger the registration of the OMAP MPUIO driver from within the GPIO probe callback. This sequence of actions will create a deadlock condition, as the driver registration attempts to proceed while a device lock is active, causing the system to hang or become unresponsive.
The OMAP MPUIO driver should be registered during the module initialization phase and unregistered during the module exit phase, rather than being registered from within the GPIO probe callback.
Our algorithm analyzes dozens of metrics to generate these 8 key vulnerability categories, which are then combined to calculate the overall risk score.