diff options
| author | Sang-Hoon Choi <csh0052@gmail.com> | 2026-09-30 02:37:31 +0900 |
|---|---|---|
| committer | Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com> | 2026-10-01 10:37:53 +0200 |
| commit | 4d69e74034b208588636ecc177e0dd43a7696af3 (patch) | |
| tree | 41841a63cfca24131e4e286eec2f6c1786df2845 /tools/lib/python/kdoc/parse_data_structs.py | |
| parent | ff82fc3a4a1d417dee1229681cc5285986edb1fa (diff) | |
| download | linux-next-4d69e74034b208588636ecc177e0dd43a7696af3.tar.gz linux-next-4d69e74034b208588636ecc177e0dd43a7696af3.zip | |
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.
Fixes: 5300ebb695fa ("gpio: exar: use devm action for freeing the IDA and drop remove()")
Reported-by: Changyul Lee <lcy8047@gmail.com>
Assisted-by: LLM
Signed-off-by: Sang-Hoon Choi <csh0052@gmail.com>
Reviewed-by: Linus Walleij <linusw@kernel.org>
Link: https://patch.msgid.link/179070265834.12871.48183786512201899.idr-bug-79@gmail.com
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>
Diffstat (limited to 'tools/lib/python/kdoc/parse_data_structs.py')
0 files changed, 0 insertions, 0 deletions
