CyberRota Analysis
AI-GeneratedThe vulnerability affects the Linux kernel's I2C driver, specifically in the i2c_imx_unreg_slave() function, where a use-after-free or NULL pointer dereference can occur if a hrtimer fires after the slave pointer is set to NULL. This can lead to potential system instability or crashes. Organizations using Linux systems that rely on the I2C interface, particularly those with embedded devices or real-time applications, should prioritize addressing this issue to maintain system reliability.
Original NVD Description
In the Linux kernel, the following vulnerability has been resolved: i2c: imx: Cancel hrtimer before clearing slave pointer In i2c_imx_unreg_slave(), the slave pointer is set to NULL after disabling interrupts. However, a pending interrupt might already have started the hrtimer (i2c_imx_slave_timeout) before the pointer was cleared. If the hrtimer fires after i2c_imx->slave is set to NULL, the timer callback i2c_imx_slave_finish_op() will call i2c_imx_slave_event() with a NULL slave pointer, which results in a use-after-free / NULL pointer dereference. Fix by canceling the hrtimer and waiting for it to complete after disabling interrupts, before clearing the slave pointer.