Description (CNA)
In the Linux kernel, the following vulnerability has been resolved: i3c: Add NULL pointer check in i3c_master_queue_ibi() The I3C master driver may receive an IBI from a target device that has not been probed yet. In such cases, the master calls `i3c_master_queue_ibi()` to queue an IBI work task, leading to "Unable to handle kernel read from unreadable memory" and resulting in a kernel panic. Typical IBI handling flow: 1. The I3C master scans target devices and probes their respective drivers. 2. The target device driver calls `i3c_device_request_ibi()` to enable IBI and assigns `dev->ibi = ibi`. 3. The I3C master receives an IBI from the target device and calls `i3c_master_queue_ibi()` to queue the target device driver’s IBI handler task. However, since target device events are asynchronous to the I3C probe sequence, step 3 may occur before step 2, causing `dev->ibi` to be `NULL`, leading to a kernel panic. Add a NULL pointer check in `i3c_master_queue_ibi()` to prevent accessing an uninitialized `dev->ibi`, ensuring stability.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected 3a379bbcea0af6280e1ca0d1edfcf4e68cde6ee0 before 1b54faa5f47fa7c642179744aeff03f0810dc62e; affected 3a379bbcea0af6280e1ca0d1edfcf4e68cde6ee0 before 09359e7c8751961937cb5fc50220969b0a4e1058; affected 3a379bbcea0af6280e1ca0d1edfcf4e68cde6ee0 before 3ba402610843d7d15c7f3966a461deeeaff7fba4; affected 3a379bbcea0af6280e1ca0d1edfcf4e68cde6ee0 before d83b0c03ef8fbea2f03029a1cc1f5041f0e1d47f; affected 3a379bbcea0af6280e1ca0d1edfcf4e68cde6ee0 before 6871a676aa534e8f218279672e0445c725f81026; affected 3a379bbcea0af6280e1ca0d1edfcf4e68cde6ee0 before e6bba328578feb58c614c11868c259b40484c5fa; affected 3a379bbcea0af6280e1ca0d1edfcf4e68cde6ee0 before fe4a4fc179b7898055555a11685915473588392e; affected 3a379bbcea0af6280e1ca0d1edfcf4e68cde6ee0 before ff9d61db59bb27d16d3f872bff2620d50856b80c; affected 3a379bbcea0af6280e1ca0d1edfcf4e68cde6ee0 before bd496a44f041da9ef3afe14d1d6193d460424e91 |
| Linux / Linux | affected 5.0; unaffected 0 before 5.0; unaffected 5.4.293 through 5.4.*; unaffected 5.10.237 through 5.10.*; unaffected 5.15.181 through 5.15.*; unaffected 6.1.135 through 6.1.*; unaffected 6.6.88 through 6.6.*; unaffected 6.12.24 through 6.12.*; unaffected 6.13.12 through 6.13.*; unaffected 6.14.3 through 6.14.*; unaffected 6.15 through * |
CWE
No CWE identifiers supplied.
References
- https://git.kernel.org/stable/c/1b54faa5f47fa7c642179744aeff03f0810dc62e
- https://git.kernel.org/stable/c/09359e7c8751961937cb5fc50220969b0a4e1058
- https://git.kernel.org/stable/c/3ba402610843d7d15c7f3966a461deeeaff7fba4
- https://git.kernel.org/stable/c/d83b0c03ef8fbea2f03029a1cc1f5041f0e1d47f
- https://git.kernel.org/stable/c/6871a676aa534e8f218279672e0445c725f81026
- https://git.kernel.org/stable/c/e6bba328578feb58c614c11868c259b40484c5fa
- https://git.kernel.org/stable/c/fe4a4fc179b7898055555a11685915473588392e
- https://git.kernel.org/stable/c/ff9d61db59bb27d16d3f872bff2620d50856b80c
- https://git.kernel.org/stable/c/bd496a44f041da9ef3afe14d1d6193d460424e91
ADP enrichment
No English description supplied.