Description
In the Linux kernel, the following vulnerability has been resolved: gpio: exar: initialize the ID before registering its cleanup devm_add_action_or_reset() invokes the cleanup action immediately when registering the action fails. gpio_exar_probe() currently stores the allocated ID in exar_gpio only after registering the action, so that failure makes exar_devm_ida_free() release ID 0. If the allocated ID is nonzero, this leaks that ID and can free ID 0 belonging to another device. Store the ID before registering the cleanup action so both the immediate failure path and normal device teardown release the correct allocation.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
5300ebb695fa0672589ab191062392f686fca75d to < 0250acba81654b2ee50bde324ad72b3f0c04d0bdaffected5300ebb695fa0672589ab191062392f686fca75d to < 88b9c4bbf83d940ab672956e5af921215905dcb4affected5300ebb695fa0672589ab191062392f686fca75d to < bf3d841ef12fcbec4458e2750956b738b043a226affected5300ebb695fa0672589ab191062392f686fca75d to < b78c114600ae3df90c083c72c290437b068577c8affected5300ebb695fa0672589ab191062392f686fca75d to < 01318927a9055136c207399eeb36ce07becac179affected5300ebb695fa0672589ab191062392f686fca75d to < f7ec4dbd2a073dd53b6349be1c586fe8580dd6b2affected5300ebb695fa0672589ab191062392f686fca75d to < 4d69e74034b208588636ecc177e0dd43a7696af3affected
Linux Linux
Default version status: affected
5.11affected0 to < 5.11unaffected5.15.224 to ≤ 5.15.*unaffected6.1.191 to ≤ 6.1.*unaffected6.6.160 to ≤ 6.6.*unaffected6.12.113 to ≤ 6.12.*unaffected6.18.57 to ≤ 6.18.*unaffected7.2.11 to ≤ 7.2.*unaffected7.3 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/0250acba81654b2ee50bde324ad72b3f0c04d0bd ↗
- https://git.kernel.org/stable/c/88b9c4bbf83d940ab672956e5af921215905dcb4 ↗
- https://git.kernel.org/stable/c/bf3d841ef12fcbec4458e2750956b738b043a226 ↗
- https://git.kernel.org/stable/c/b78c114600ae3df90c083c72c290437b068577c8 ↗
- https://git.kernel.org/stable/c/01318927a9055136c207399eeb36ce07becac179 ↗
- https://git.kernel.org/stable/c/f7ec4dbd2a073dd53b6349be1c586fe8580dd6b2 ↗
- https://git.kernel.org/stable/c/4d69e74034b208588636ecc177e0dd43a7696af3 ↗